首页 > 解决方案 > 在给定未知参数“DIRECTORY”的情况下安装 TARGETS

问题描述

尝试使用 cmake 构建项目并安装目录。在 cmakefile 之后使用。

使用的 CMake 版本:3.8.2

# Specifying minimum cmake version
cmake_minimum_required(VERSION 3.8.2)

# Project name
project(pro LANGUAGES C CXX VERSION 0.1.0)

# Set C++11 compiler
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

# Global Install Directories
include(GNUInstallDirs)

# Source files
SET(SRC_FILES
    src/file.cpp
)

# Project requirements
find_package(OpenCV REQUIRED)

# Creating static library
add_library(${PROJECT_NAME} STATIC ${SRC_FILES})

target_include_directories(${PROJECT_NAME} PUBLIC
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
    $<BUILD_INTERFACE:${OpenCV_INCLUDE_DIRS}>
    $<INSTALL_INTERFACE:include>)

# Linking opencv dynamically
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${OpenCV_LIBS})

# Set correct Install directories
install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}Config
    ARCHIVE  DESTINATION ${CMAKE_INSTALL_LIBDIR}
    LIBRARY  DESTINATION ${CMAKE_INSTALL_LIBDIR}
    RUNTIME  DESTINATION ${CMAKE_INSTALL_BINDIR}
    DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})

安装目录时出现以下错误

  install TARGETS given unknown argument "DIRECTORY".

-- Configuring incomplete, errors occurred!

我无法理解错误,任何人都可以帮助我吗?谢谢 !

标签: c++cmake

解决方案


推荐阅读