【问题标题】:Install a custom file generated during compilation in CMake在 CMake 中安装编译期间生成的自定义文件
【发布时间】:2015-02-24 06:49:05
【问题描述】:

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

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

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

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

ROOT_GENERATE_DICTIONARY(
    SampleDictionary
    ...
    )

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

例如,如果我尝试添加:

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

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

【问题讨论】:

    标签: cmake


    【解决方案1】:

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

    【讨论】:

    • 完美:install(FILES build/SampleDictionary_rdict.pcm DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) 成功了。 (build 是我的 CMake 构建目录)
    猜你喜欢
    • 1970-01-01
    • 2017-08-02
    • 1970-01-01
    • 2020-06-23
    • 1970-01-01
    • 2019-03-02
    • 2017-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多