我试图让 Flycheck 正确查看 OpenGL 在我的 Mac 上的位置,但它似乎无法找到它。我已尝试将以下行添加到我的 .clang_complete
文件中,但似乎没有任何效果。我一直收到错误 OpenGL/gl.h could not be found
:
-framework OpenGL
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework/Headers
这不会在编译期间发生,它只是搞乱了 Irony 的静态分析和编译。我列出的目录中直接有gl.h
和glu.h
,这可能是它没有帮助添加的原因,但我不知道如何让 Irony 正确查看文件。
编辑:使用 Flycheck 进行语法检查,而不是 Irony
编辑:macOS X 框架目录:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/
OpenGL.framework/
Headers/
Modules/
OpenGL.tbd/
Versions/
最佳答案
好吧,由于似乎没有人对此有答案,我将发布我的解决方法。通过符号链接(symbolic link) /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework/Headers
到 /usr/local/include/OpenGL
,你可以给检查器它想要的文件路径,解决这个问题。不是最好的解决方案,但仍然是一个不错的解决方法。
关于c++ - 如何让Flycheck(使用clang_complete)识别Mojave上的OpenGL框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57127965/