【发布时间】:2021-12-29 16:12:15
【问题描述】:
我有一个使用 Visual Studio 2022 处理的 C++ CMake 项目。我尝试在调试期间更改代码并单击“热重载”按钮,但我收到以下消息:
进行了无法编译的编辑
并且在 Visual Studio 输出窗口中出现以下消息:
“mylib.dll”中的“Canvas.cpp”未启用“编辑并继续”链接。确保启用 /INCREMENTAL 链接,并且不忽略 /EDITANDCONTINUE 指令。
考虑到这将是一个跨平台项目,在CMakeLists.txt 中执行此操作的正确方法是什么?
这是我的CMakeLists.txt:
cmake_minimum_required (VERSION 3.18)
project (my-project)
add_definitions (-DMY_PROJECT_EXPORTS)
set (CMAKE_INCLUDE_CURRENT_DIR ON)
set (CMAKE_AUTOMOC ON)
set (CMAKE_AUTOUIC ON)
set (CMAKE_AUTORCC ON)
find_package (Qt5 COMPONENTS Core Gui Widgets REQUIRED)
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../..)
set (PROJECT_SRC
# A bunch of files, i.e.
Private/Canvas.cpp
Private/View.cpp
Private/Scene.cpp
)
add_library (${PROJECT_NAME} SHARED ${PROJECT_SRC})
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_17)
target_link_libraries(${PROJECT_NAME} PUBLIC
Qt5::Widgets
Qt5::Gui
)
【问题讨论】:
标签: c++ cmake hot-reload visual-studio-2022