这个 CMake 错误是什么意思?我该如何解决它?

时间:2021-07-17 16:26:23

标签: cmake cmake-gui

我收到了这个错误,我一直试图理解这个错误,但一无所获。

add_library cannot create target "Plugin" because another target
with the same name already exists.  The existing target is a shared library created 
in source directory "D:/CHAI3D/SOFA/src/applications/plugins/plugin". 
See documentation for policy CMP0002 for more details.

下面是添加的 CMakelists.txt 以供参考。我试图删除不必要的代码。到目前为止,我已经尝试使用 set(ALLOW_DUPLICATE_CUSTOM_TARGETS TRUE) 允许重复目标 但无济于事

cmake_minimum_required(VERSION 3.1)
project(Plugin VERSION 21.06.99)

# Policies
cmake_policy(SET CMP0079 NEW)

set(ALLOW_DUPLICATE_CUSTOM_TARGETS TRUE)

set (PLUGIN_VERSION ${PROJECT_VERSION})

set(HEADER_FILES
    src/initPlugin.h
    ...
    )
set(SOURCE_FILES
    src/initPlugin.cpp
    ...
)

file(GLOB_RECURSE RESOURCE_FILES  "*.md" "*.psl" "*.py" "*.pyscn" "*.scn" "*.ah")

add_library(${PROJECT_NAME} SHARED ${HEADER_FILES} ${SOURCE_FILES} ${RESOURCE_FILES} )

target_include_directories(${PROJECT_NAME} PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>")

set_target_properties(${PROJECT_NAME} PROPERTIES COMPILE_FLAGS "-DSOFA_BUILD_PLUGIN")
target_link_libraries(${PROJECT_NAME} SofaCore SofaConstraint SofaSimpleFem SofaBaseMechanics SofaRigid SofaBaseVisual SofaOpenglVisual)


## Install rules for the library and headers; CMake package configurations files
sofa_create_package_with_targets(
    PACKAGE_NAME ${PROJECT_NAME}
    PACKAGE_VERSION ${PROJECT_VERSION}
    TARGETS ${PROJECT_NAME} AUTO_SET_TARGET_PROPERTIES
    INCLUDE_SOURCE_DIR "src"
    INCLUDE_INSTALL_DIR ${PROJECT_NAME}
    RELOCATABLE "plugins"
    )
SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
SET_PROPERTY(TARGET ${PROJECT_NAME} PROPERTY FOLDER "plugins")

0 个答案:

没有答案
相关问题