代码拉取完成,页面将自动刷新
同步操作将从 附离/NodeSim 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
cmake_minimum_required (VERSION 3.8)
project(NodeSim VERSION 0.1 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON) #设置C++标准。该命令将C++标准设置为必选,即在编译C++代码时,必须使用该标准
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets)
message("QTVer:" Qt${QT_VERSION_MAJOR})
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets Core Gui)
#将指定目录添加到编译器的头文件搜索路径之下,指定的目录被解释成当前源码路径的相对路径。
include_directories(inc)
include_directories(thirdpkg)
FILE(GLOB_RECURSE SOURCE_FILES inc/*.h src/*.cpp )
message("Add Success")
#message(${SOURCE_FILES})
# 设置静态库的输出目录
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin)
# 设置动态库的输出目录
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin)
# 存放可执行软件的目录
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin)
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(NodeSim
MANUAL_FINALIZATION #MANUAL_FINALIZATION是一个C++11新特性,它允许在类的构造函数和析构函数之外提供其他方法来控制对象的生命周期。
main.cpp
${SOURCE_FILES}
)
endif()
target_link_libraries(NodeSim PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
#设置目标属性
set_target_properties(NodeSim PROPERTIES
WIN32_EXECUTABLE FALSE # 是否存在cmd窗口
)
#https://zhuanlan.zhihu.com/p/630034777
if(QT_VERSION_MAJOR EQUAL 6)
qt_finalize_executable(NodeSim)
endif()
# TODO: 如有需要,请添加测试并安装目标。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。