我有一个包含多个子目录的项目,这些子目录生成多个可执行文件:
./CMakeLists.txt
./subproject_1/
./subproject_1/CMakeLists.txt
./subproject_2/
./subproject_2/CMakeLists.txt
...
./subproject_N
./subproject_N/CMakeLists.txt
当前,顶层CMakeLists.txt将用户主目录中的EXECUTABLE_OUTPUT_PATH
设置为software_project/build/bin
。
现在,我想通过build/bin/
将/opt/
中当前的可执行内容安装到$ sudo make install
中。同样,我也有默认配置文件,也想部署到/etc/
。
我尝试使用install(TARGETS...
,但是顶层CMakeLists对子项目目标一无所知(通过add_subdirectory
)。 install(DIRECTORY...
似乎只是复制所有文件,而不是可执行文件