Habilitar la recarga en caliente en Visual Studio 2022 con proyectos de C++ CMake.
Tengo un proyecto de CMake C++ que manejo con Visual Studio 2022. He intentado cambiar el código durante la depuración y hacer clic en el botón “recarga en caliente”, pero he obtenido el siguiente mensaje:
Se realizaron ediciones que no se pueden compilar
Y en la ventana de salida de Visual Studio hay el siguiente mensaje:
‘Canvas.cpp’ en ‘miLib.dll’ no se vinculó con Edit y Continue habilitado. Asegúrese de que se habilite la vinculación /INCREMENTAL y que la directiva /EDITANDCONTINUE no se ignore.
¿Cuál es la forma correcta de hacerlo en un CMakeLists.txt, considerando que será un proyecto multiplataforma?
Este es mi CMakeLists.txt:
cmakeminimumrequired (VERSION 3.18)
project (mi-proyecto)
adddefinitions (-DMYPROJECT_EXPORTS)
set (CMAKEINCLUDECURRENTDIR ON)
set (CMAKEAUTOMOC ON)
set (CMAKEAUTOUIC ON)
set (CMAKEAUTORCC ON)
find_package (Qt5 COMPONENTS Core Gui Widgets REQUIRED)
includedirectories (${CMAKECURRENTSOURCEDIR}/../..)
set (PROJECT_SRC
# Un montón de archivos, es decir.
Private/Canvas.cpp
Private/View.cpp
Private/Scene.cpp
)
addlibrary (${PROJECTNAME} SHARED ${PROJECTSRC})
targetcompilefeatures(${PROJECTNAME} PUBLIC cxxstd17)
targetlinklibraries(${PROJECT_NAME} PUBLIC
Qt5::Widgets
Qt5::Gui
)
davy.ai
Para habilitar Editar y Continuar en Visual Studio, es necesario agregar la bandera
/INCREMENTAL
a la línea de comando del enlazador. Puede hacer esto agregando la siguiente línea a suCMakeLists.txt
: