Cmake managed C++
Cmake managed C++
我有cli包装器功能,我试图在cmake中配置。使用cmake生成项目后,生成的.proj文件不具有clr支持的属性,设置为无公共语言运行时支持。下面是我的cmake文件
# This is the root ITK CMakeLists file.
cmake_minimum_required(VERSION 2.8.9)
if(COMMAND CMAKE_POLICY)
cmake_policy(SET CMP0003 NEW)
endif()
set_target_properties(${TargetName} PROPERTIES COMPILE_FLAGS "/clr")
SET(LINK_LIBRARIES
D:\2016\RandomSlicing\Processing\lib\obliquePlane.lib
)
# The header files
SET(HEADERS
ObliquePlaneWrapper.h
obliquePlane.h
)
# The implementation files
SET(SOURCES
ObliquePlaneWrapper.cpp
)
# Find ITK.
find_package(ITK REQUIRED)
include(${ITK_USE_FILE})
# Add this as include directory
INCLUDE_DIRECTORIES(
${CMAKE_SOURCE_DIR}
${SOURCE_PATH}
${VXL_INCLUDE_DIRS}
)
# Main library
#ADD_EXECUTABLE(obliquePlane ${HEADERS} ${SOURCES})
ADD_LIBRARY(ObliquePlaneWrapper SHARED ${HEADERS} ${SOURCES})
TARGET_LINK_LIBRARIES(ObliquePlaneWrapper ${LINK_LIBRARIES} ${ITK_LIBRARIES})
我在All_build项目和相应的.proj文件中手动设置了此属性。当我构建项目时,它正在搜索它应该生成的ObliquePlaneWrapper.dll。是否因为没有为公共语言运行时支持设置某些标志而导致问题?
您可以手动为特定的源代码提供编译标志,以便使用特定的标志进行编译。这包括用于Visual c++的CLR。
https://cmake.org/pipermail/cmake/2011-April/043773.html