cmake - 在 CMake 中安装编译期间生成的自定义文件

标签 cmake

我想安装一个在编译 CMake 项目时生成的自定义文件:

在我的项目中,文件 SampleDictionary_rdict.pcm 是在编译期间由来自外部模块的命令生成的,我想将其复制到 $CMAKE_INSTALL_PREFIX/lib使用 make install

我遇到的问题是 install(...) 的所有变体,我试过要求文件在 编译之前存在。

来自生成文件的外部模块的命令是:

ROOT_GENERATE_DICTIONARY(
    SampleDictionary
    ...
    )

这会在我的构建目录中生成 SampleDictionary_rdict.pcm

例如,如果我尝试添加:

install(TARGETS SampleDictionary DESTINATION "${CMAKE_INSTALL_PREFIX}/lib")

到我的 CMakeLists.txt 的末尾,我遇到了文件不存在的问题。

最佳答案

install(TARGETS ... 用于安装项目中构建的目标。您想要安装文件 SampleDictionary_rdict.pcm,因此您需要一个 variant文件:安装(FILES ...

关于cmake - 在 CMake 中安装编译期间生成的自定义文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28689741/

相关文章:

python - OpenCV 2.0 与 MacPorts 的 SWIG Python 绑定(bind)

c++ - 构建解决方案时使 Visual Studio 的 CMake 工具运行 INSTALL

c++ - 用于模块化 C++ 框架的 CMAKE

c++ - CMake 和 Window .Lib 文件

c++ - 如何让 cmake 找到 pybind11

c++ - 用cmake叮当响。 target_include_directories “No such file or directory”

cmake - 在开发共享库期间使用 KDevelop

c++ - 错误:在mingw64上构建cmake + boost项目时, 'GetSystemTimeAsFileTime'的类型冲突

c++ - cmake 引用了以下导入的目标,但丢失了

c++ - 链接器没有链接我自己的静态库