C++ 如何在CmakeLists文件中应用复制命令
这是我的CMakeLists.txt文件,它存在于当前目录project1中 在project1目录中,我有一个src目录,其中包含源文件和头文件。我有构建目录C++ 如何在CmakeLists文件中应用复制命令,c++,file,cmake,copy,C++,File,Cmake,Copy,这是我的CMakeLists.txt文件,它存在于当前目录project1中 在project1目录中,我有一个src目录,其中包含源文件和头文件。我有构建目录 cmake_minimum_required(VERSION 2.6) #Declaration du projet project(MYfirstcamke) set(EXECUTABLE_OUTPUT_PATH bin/${CMAKE_BUILD_TYPE}) #Inclusion de opencv include_di
cmake_minimum_required(VERSION 2.6)
#Declaration du projet
project(MYfirstcamke)
set(EXECUTABLE_OUTPUT_PATH bin/${CMAKE_BUILD_TYPE})
#Inclusion de opencv
include_directories(/usr/local/include/)
link_directories(/usr/local/lib)
file(
GLOB_RECURSE
source_files
src/*
)
#declaration de l'executable
add_executable(
my_executable
${source_files}
)
#Configuration de l'edition de lien.
target_link_libraries(
my_executable opencv_core opencv_imgproc opencv_video opencv_highgui
)
在此之前,我需要使用file命令复制当前目录中存在的src目录中的*.cpp和*.hpp。我写这段代码:
file(GLOB MY_PUBLIC_HEADERS
"*.hpp"
)
file(GLOB MY_PUBLIC_SOURCE
"*.cpp"
)
file(COPY ${MY_PUBLIC_SOURCE} DESTINATION "src/")
file(COPY ${MY_PUBLIC_HEADERS} DESTINATION "src/")
当我开始制作时。。其中当前目录为build*。hpp和*.cpp被复制到src,但这里的问题是,src也被复制到构建,在这种情况下,cmake不起作用。我需要project1目录中的src rest。我如何解决这个问题?你在做一些奇怪的事情。你首先要解决什么问题?为什么不手动将标题和源代码放在
src/
中呢?我打赌这是一个错误。请说明您的想法。一般来说,复制源文件必须有好的参数。假设
是项目的源目录(CMakeLists.txt所在的位置),
是二进制目录(执行cmake
的位置)和文件/myu source.cpp
和/myu header.hpp
。然后,您的第二个脚本(位于/CMakeLists.txt
)将相应地将文件复制到/src/my_source.cpp
和/src/my_header.hpp
。不会在/src/
目录下创建其他文件或目录。