c++ - 在 Mac OS 中将 QT 与 CMAKE 集成
问题描述
我正在尝试将我的 QT 项目集成到我的 CLION 项目中。在这种情况下,我遇到了 CMAKE 和 QT 集成的问题。我的 CmakeList.txt 的内容是:
cmake_minimum_required(VERSION 3.12)
project(BD2_PROYECTO_1)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_PREFIX_PATH "/Users/jonathanprieto/Qt5.13.0/5.13.0/")
find_package(Qt5Widgets REQUIRED)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
add_executable(BD2_PROYECTO_1 parser.cpp parser.h main.cpp statichashing.cpp statichashing.h randomfile.cpp randomfile.h record.cpp record.h transactions.cpp transactions.h ui/input.cpp ui/input.h ui/ui_dialog.h ui/mainwindow.h ui/mainwindow.cpp ui/mainwindow.ui ui/ui_input.ui ui/input.h ui/dialog.ui)
target_link_libraries(helloworld Qt5::Widgets)
但我收到以下错误:
CMake Error at CMakeLists.txt:8 (find_package):
By not providing "FindQt5Widgets.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"Qt5Widgets", but CMake did not find one.
Could not find a package configuration file provided by "Qt5Widgets" with
any of the following names:
Qt5WidgetsConfig.cmake
qt5widgets-config.cmake
Add the installation prefix of "Qt5Widgets" to CMAKE_PREFIX_PATH or set
"Qt5Widgets_DIR" to a directory containing one of the above files. If
"Qt5Widgets" provides a separate development package or SDK, be sure it has
been installed.
有人可以帮助我吗?
谢谢
解决方案
经过一些尝试,我找到了解决问题的方法。所以我发布我的 CMakeList.txt 代码以防你有同样的问题。
cmake_minimum_required(VERSION 3.12)
project(BD2_PROYECTO_1)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_PREFIX_PATH "/Users/jonathanprieto/Qt5.13.0/5.13.0/clang_64/lib/cmake")
find_package(Qt5 COMPONENTS Widgets REQUIRED)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
add_executable(BD2_PROYECTO_1 parser.cpp parser.h main.cpp statichashing.cpp statichashing.h randomfile.cpp randomfile.h record.cpp record.h transactions.cpp transactions.h ui/input.cpp ui/input.h ui/ui_dialog.h ui/mainwindow.h ui/mainwindow.cpp ui/mainwindow.ui ui/ui_input.ui ui/input.h ui/dialog.ui ui/input.ui)
target_link_libraries(BD2_PROYECTO_1 Qt5::Widgets)
我希望这对你有帮助。
推荐阅读
- java - 用 JAVA 和 Python 编写的相同代码给出不同的结果(粒子过滤器)
- vue.js - 需要使用 vuex persist 将 base64 数据存储在本地存储中
- javascript - 在 xrange 图表的 Highstocks 版本中不支持 x 轴上的最小值/最大值
- mocha.js - sinon fake server.requests 返回一个空数组
- c - 编译时错误为“需要左值”,但不确定原因
- python - 将蓝牙名称更改为 Pi Zero 上的当前 IP 地址
- python-3.x - 如何在 Python 中创建宏?
- sql - 如何通过语句在分区上向行号添加条件
- php - 如何更改 Laravel Passport 中 OAuthServerException 上无效凭据的默认消息?
- java - PreparedStatement 与调用 execute() 的记录不匹配