我使用CLion然后再使用CMake。如何配置CMake与Qt5.5.1一起使用?它是我的CMakeLists:
cmake_minimum_required(VERSION 3.3)
project(BennuEngine)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(Qt5_DIR "~/programy/Qt5.5.1/5.5/gcc_64/lib/cmake/Qt5")
set(CMAKE_PREFIX_PATH "~/programy/Qt5.5.1/5.5")
find_package(Qt5 REQUIRED MODULES Core)
file(GLOB_RECURSE SOURCE_FILES_BENNUENGINE "*.c" "*.cpp")
add_executable(BennuEngine ${SOURCE_FILES_BENNUENGINE})
target_include_directories(BennuEngine /usr/include/freetype2)
target_link_libraries(BennuEngine GL GLU GLEW freetype)
target_link_libraries(BennuEngine sfml-window sfml-graphics sfml-system sfml-audio sfml-network)
target_link_libraries(BennuEngine unittest++)
target_include_directories(BennuEngine PUBLIC src)
我得到的错误是:
Error:Could not find a package configuration file provided by "Qt5MODULES" with any of the following names:
Qt5MODULESConfig.cmake qt5modules-config.cmake
Add the installation prefix of "Qt5MODULES" to CMAKE_PREFIX_PATH or set "Qt5MODULES_DIR" to a directory containing one of the above files. If "Qt5MODULES" provides a separate development package or SDK, be sure it has been installed.
答案 0 :(得分:0)
尝试使用 find_package(),然后 qt5_use_modules()。
这就是我的CMakeList的样子。
cmake_minimum_required(VERSION 3.3)
project(ELF_Scout)
set(CMAKE_AUTOMOC ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES ...)
add_executable(ELF_Scout ${SOURCE_FILES})
if (WIN32)
# If you compile on windows replace path to your Qt folder
set(CMAKE_PREFIX_PATH "C:\\Program Files\\Qt\\5.5\\mingw492_32\\lib\\cmake")
endif()
find_package(Qt5Core REQUIRED)
find_package(Qt5Widgets REQUIRED)
find_package(Qt5Gui REQUIRED)
qt5_use_modules(ELF_Scout Core Widgets Gui)