【问题标题】:MacOS unable to find Qt5 pathMacOS 找不到 Qt5 路径
【发布时间】:2021-01-06 20:33:07
【问题描述】:

我有安装5.15.1的GUI版本qt5也安装了它,找不到路径如下。我的qt5路径是/Users/someuser/Qt/5.15.1/

我的 CMakeLists.txt:

# Default paths
# - CMake's path finder is completely useless for Qt5 + Python on Win64
# - allow override from command line on OsX, eg use "cmake ..  -DCMAKE_PREFIX_PATH=/Users/someone/qt5.2.1/5.2.1/clang_64/

if(APPLE)
    if(NOT CMAKE_PREFIX_PATH)
        set(CMAKE_PREFIX_PATH "/usr/local/opt/qt5/") #  mac/homebrew (version independent)
        #set(CMAKE_PREFIX_PATH "/home/someuser/Qt/5.15.1/clang_64") #  other...
    endif()
endif()

我的错误:

No Qt5 found (recommended!), trying to use Qt4
CMake Error at /usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/FindQt4.cmake:1314 (message):
  Found unsuitable Qt version "" from NOTFOUND, this code requires Qt 4.x
Call Stack (most recent call first):
  CMakeLists.txt:644 (find_package)

【问题讨论】:

  • 您通常不会在 cmakelists.txt 中硬编码,而是通过 -DCMAKE_PREFIX_PATH=$HOME/Qt/5.15.1/clang_64 将 Qt 路径传递给 cmake,或者添加 $HOME/Qt/5.15 .1/clang_64/bin 到 PATH。

标签: macos qt cmake qt5


【解决方案1】:

你的脚本逻辑有错误:

if(NOT CMAKE_PREFIX_PATH)

如果CMAKE_PREFIX_PATHevaluated 仅对 false 常量,则将执行此代码块。如果此列表中还有其他值,则不会更改。

相反,您应该使用:

if(APPLE)
    list(APPEND CMAKE_PREFIX_PATH "/usr/local/opt/qt5/")
    # or list(APPEND CMAKE_PREFIX_PATH "/home/someuser/Qt/5.15.1/clang_64")
endif()

【讨论】:

  • [link] (pastebin.com/1p9mhzxg) 这是我的 CMakeOutput.log,我尝试了您建议的更改,但它仍然不起作用,还有其他建议吗?谢谢。
  • 您提交给PasteBin的日志文件有任何错误。此外,该文件中没有任何与“qt5”相关的消息。
猜你喜欢
  • 2019-01-17
  • 2020-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-17
  • 2019-06-04
相关资源
最近更新 更多