cmake 在Clion中使用Qt

o0lyfsai  于 2023-04-21  发布在  其他
关注(0)|答案(2)|浏览(185)

我尝试使用Clion IDE使用Qt库编译一个简单的程序,但我不知道如何配置CMakeLists.txt文件。(我不熟悉cmake和工具链)这是我当前的CMakeLists.txt文件:

cmake_minimum_required(VERSION 3.2)
project(MyTest)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(SOURCE_FILES main.cpp)
add_executable(MyTest ${SOURCE_FILES})

 # Define sources and executable
set(EXECUTABLE_NAME "MySFML")
add_executable(${EXECUTABLE_NAME} main.cpp)


# Detect and add SFML
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
find_package(SFML 2 REQUIRED system window graphics network audio)
if(SFML_FOUND)
    include_directories(${SFML_INCLUDE_DIR})
    target_link_libraries(${EXECUTABLE_NAME} ${SFML_LIBRARIES})
endif()

它被配置为使用SFML库和一个“FindSFML.cmake”文件,它工作正常。(我从一些教程中复制了这些文件)现在我想得到一些关于正确的CMakeLists.txt配置的帮助,以编译使用Qt库的程序(如果提供文件和解释会更有帮助)。
P.S:我目前的操作系统是Manjaro 0.8.13,我能找到的只是在Windows环境下解释配置,所以我无法实现这些教程。

cbeh67ev

cbeh67ev1#

除了this answer之外,您还可以使用更简单的语法:

find_package(Qt5 REQUIRED COMPONENTS Core Widgets Gui)

然后,不调用qt5_use_modules,而是使用标准命令链接:

target_link_libraries(MyTest Qt5::Core Qt5::Widgets Qt5::Gui)
khbbv19g

khbbv19g2#

您的CMake项目文件缺少Qt包。您必须添加:

find_package( Qt5Core REQUIRED )
find_package( Qt5Widgets REQUIRED )
find_package( Qt5Gui REQUIRED )

然后

qt5_use_modules( MyTest Core Widgets Gui )

相关问题