c++ - Sublime Text 找不到外部 C++ 库

标签 c++ sublimetext2 sublimetext sublimetext3 openframeworks

我一直在寻找这个问题的答案大约一个星期了,但我在任何地方都找不到。我在 Windows 8 上使用 openFrameworks 和 Sublime Text,我已经安装了 MinGW 并将其添加到路径中。我还安装了 SublimeClang 并将其添加到我的 SublimeClang 用户设置中:

{
"options": [ 
    "-I/laura/openFrameworks/libs/**",
    "-I/laura/openFrameworks/addons/**"
]

我得到的错误是:

/laura/openFrameworks/apps/myApps/mySketch/src/ofApp.h:3:10: 
fatal error: 'ofMain.h' file not found
#include "ofMain.h"
         ^
1 error generated.
[Finished in 0.1s with exit code 1]

所以我不知道这是 SublimeClang 问题还是 Sublime 问题还是 Windows 问题,但我也是 C++ 的新手,并不完全了解它是如何构建或查找东西的。我是否也必须将 openFrameworks/libs 添加到路径或其他什么?

谢谢

最佳答案

注意:Sublime text 是一个编辑器。它本身没有专用的构建系统或任何语言集成。它只是提供了通过热键 (CTRL + B) 调用外部构建系统的便捷方式

您的问题出在构建系统上。 Sublime Text 2 的默认 c++ 构建系统只是在命令行中调用 g++。 这对于 Hello World 来说已经足够了,但是要构建一个利用 3rd 方库的应用程序,您需要一个实际的构建系统,例如 make。 Sublime text 默认支持 make(你只需在 Tools/Build Systems 中选择 make 选项) make 的问题是您需要编写自己的 makefile,这显然超出了您的 c++ 知识范围(不要认为这是坏事)

我认为你有 3 个选择:

  1. 学习编写 makefile 和使用 Sublime text(使用 make Build 系统选项或从命令行 make)

  2. 使用在 make 之上构建的其他一些(更简单和更好的)构建系统,例如 CMake。有一个 CMake 包(为 CMake 语言提供语法高亮显示)和另一个 CMake 片段,为最常见的操作提供片段(原型(prototype))。

  3. 从 Sublime 文本切换到 IDE。由于您使用的是 Windows,我建议您使用 QtCreator 或 Visual Studio Express。我更喜欢 Qt Creator。 Qt Creator 的好处在于它提供了自己的构建系统 (qmake),该系统与编辑器集成得非常好,而且对新手非常友好。

当然,通过第 1 或第 2 个选项,您将学到更多的知识,并且您将在 5 分钟内启动并运行第 3 个选项。你的来电。 请注意,如果您想成为一名专业的 C++ 开发人员,您最终必须学习构建系统。

关于c++ - Sublime Text 找不到外部 C++ 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26038825/

相关文章:

c++ - Qt 应用程序在运行时找不到共享库

c++ - 如何使用初始化列表构造 std::array 对象?

python - PEP8 的 E128 : continuation line under-indented for visual indent? 是什么

sublimetext - 如何在 Sublime Text 3 中编辑片段?

sublimetext2 - Sublime Text Command Palette 中使用的搜索样式叫什么?

find - Sublime Text : How to jump to file from Find Results using keyboard?

c++ - 我需要如何声明一个成员类?

ruby - 通过 Sublime 的命令行运行 Ruby 构建代码

python - 从 Sublime Text 2 运行 .py 文件

c++ - std::vector 如何分配对象?