如何让 Flycheck(使用 clang_complete)识别 Mojave 上的 OpenGL 框架

How to get Flycheck (using clang_complete) to recognize the OpenGL framework on Mojave

本文关键字:识别 Mojave 上的 框架 OpenGL complete Flycheck clang 使用      更新时间:2023-10-16

我试图让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.hglu.h,这可能就是添加没有帮助的原因,但是我不知道如何让Irony正确查看文件。

编辑:使用Flycheck进行语法检查,而不是讽刺

编辑:macOS X 框架目录:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/
OpenGL.framework/
Headers/
Modules/
OpenGL.tbd/
Versions/

好吧,由于似乎没有人对此有答案,我将发布我的解决方法。通过将/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework/Headers符号链接到/usr/local/include/OpenGL,您可以为检查器提供所需的文件路径,从而解决问题。不是最好的解决方案,但仍然是一个不错的解决方法。