繁体   English   中英

在 macOS 11.3 上找不到“gl.h”

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM