Cmake managed C++

Cmake managed C++

本文关键字:C++ managed Cmake      更新时间:2023-10-16

我有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