[英]Qt 5.12: Failed to find "GL/gl.h" in "/usr/include/libdrm"
[英]Failed to find "gl.h" on macOS 11.3
我已经启动 XCode 12.5 并在 Github Actions 作为自托管运行器的 macOS 11.3(M1 芯片)上运行。
虽然我的 macOS 工作流程能够很好地在 github 托管的机器中找到gl.h
,但我自己的自托管机器报告了这一点:
CMake Error at /Users/administrator/actions-runner/_work/Mudlet/Qt/5.14.2/clang_64/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 (message):
Error: Failed to find "gl.h" in
"/System/Library/Frameworks/OpenGL.framework/Headers;/System/Library/Frameworks/AGL.framework/Headers".
Call Stack (most recent call first):
/Users/administrator/actions-runner/_work/Mudlet/Qt/5.14.2/clang_64/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake:202 (include)
3rdparty/vcpkg/scripts/buildsystems/vcpkg.cmake:555 (_find_package)
/Users/administrator/actions-runner/_work/Mudlet/Qt/5.14.2/clang_64/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake:94 (find_package)
3rdparty/vcpkg/scripts/buildsystems/vcpkg.cmake:555 (_find_package)
/Users/administrator/actions-runner/_work/Mudlet/Qt/5.14.2/clang_64/lib/cmake/Qt5UiTools/Qt5UiToolsConfig.cmake:219 (find_package)
3rdparty/vcpkg/scripts/buildsystems/vcpkg.cmake:555 (_find_package)
3rdparty/edbee-lib/edbee-lib/CMakeLists.txt:177 (FIND_PACKAGE)
负责的代码是这一行:
FIND_PACKAGE(Qt5UiTools REQUIRED)
gl.h
无法定位的原因可能是什么?
我在尝试制作 qt 应用程序时更新到 MacOS Big Sur (11.6.2) 时遇到了这个问题。
这是我得到的错误:
CMake Error at /usr/local/Qt-5.5.1/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 (message):
Failed to find "gl.h" in
"/System/Library/Frameworks/OpenGL.framework/Headers;/System/Library/Frameworks/AGL.framework/Headers".
Call Stack (most recent call first):
/usr/local/Qt-5.5.1/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake:139 (include)
我的 google-fu 从 2019 年发现了这个 [https://github.com/ziglang/zig/issues/2208] https://github.com/ziglang/zig/issues/2208 :
The new path to the framework is:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks
我看了看,gl.h在几个地方都找到了,包括OpenGL.framework。
作为一种解决方法,我将 /usr/local/Qt-5.5.1/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 中的库路径从:
set(_GL_INCDIRS "/System/Library/Frameworks/OpenGL.framework/Headers" "/System/Library/Frameworks/AGL.framework/Headers")
至:
set(_GL_INCDIRS "/System/Library/Frameworks/OpenGL.framework/Headers" "/System/Library/Frameworks/AGL.framework/Headers" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks")
在 Github Actions 中作为自托管运行器在 macOS 11.3(M1 芯片)上运行。
自(2022 年 8 月)以来,使用最新版本的自托管运行器重试:
GitHub 操作:自托管运行器现在支持 Apple M1 硬件
对 Apple 硅硬件(例如 M1 芯片)的 Actions runner 支持现已普遍可用。
这为团队提供了在 macOS ARM64 运行时中运行自托管 macOS 工作流的能力。
现在Actions运行器支持 M1 和 ARM64 运行时,这意味着开发人员可以在自己的 M1 或 M2 硬件上运行它。根据初步测试,目前有两个问题需要注意:
- macOS ARM64 不支持 node12。
因此,runner 将自动使用 node16 执行为 node12 编写的任何 javascript Action。- GitHub 提供的所有操作都与运行器兼容,除了
setup-python
的已知问题。 可以在此处跟踪对此的修复。有关如何设置自托管 macOS ARM64 运行器的更多信息,请参阅我们的文档。
如果您对 Actions 自托管 Apple 芯片支持有任何反馈或问题,您可以在运行程序存储库中提交问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.