CLion 使用配置 Qt CreateProcess error=193, %1 不是有效的 Win32 应用程序。
风尘寂剑 2020-05-24 10:18:29 # cmake_minimum_required(VERSION <specify CMake version here>)
project(StudentManager)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_INCLUDE_CURRENT_DIR ON) # include build directory where the qt generated header exists
# 设置Qt5的cmake模块所在目录,如果不设置将使用系统提供的版本
# QT_DIR和QT_VERSION是指定了qt安装目录和版本的环境变量
# 如果你使用了系统的cmake,那么会优先使用系统提供模块,因为cmake会优先搜索CMAKE_SYSTEM_PREFIX_PATH
# 如果你不想让cmake优先搜索系统目录(会导致编译使用系统安装的qt而不是我们配置的),需要提示find_package命令
set(CMAKE_PREFIX_PATH D:/Qt/Tools/mingw730_64)
# 找到对应的qt模块,名字为qmake中QT += <name>中的name首字母大写后加上Qt5前缀
# 例如core为QtCore,你也可以去${CMAKE_PREFIX_PATH}的目录中找到正确的模块名
# 如果不想使用系统qt,这样写(注意NO_DEFAULT_PATH参数,它会让find_package跳过系统目录的查找):
# tell cmake where your qt5 library lies
set(Qt5_DIR D:/Qt/5.14.2/mingw73_64/lib/cmake/Qt5)
find_package(Qt5 REQUIRED COMPONENTS Widgets Core Gui)
# 如果你想要使用系统自带的qt,这样写:
# find_package(Qt5Widgets REQUIRED)
cmake_minimum_required(VERSION 3.16)
set(project_ui_files MainWindow.ui)
set(project_src_files Main.cpp MainWindow.cpp)
set(project_header_files MainWindow.h)
set(CMAKE_AUTOMOC ON)
SET(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
# ui files are converted to header files at build time like XML in WPF
qt5_wrap_ui(project_headers_wrapped ${project_ui_files})
# because header files are where Q_Object is defined
qt5_wrap_cpp(project_src_moc ${project_header_files})
add_executable(${PROJECT_NAME} # ui files are not necessary here
${project_src_files}
${project_header_files}
${project_headers_wrapped}
${project_src_moc}
)
target_link_libraries(${PROJECT_NAME} # PROJECT_NAME is case-sensitive
PUBLIC
Qt5::Widgets
Qt5::Core
Qt5::Gui
)