2

我正在尝试在 CMake 中生成 deb 包。问题是,我在分离符号链接以使其符合 Debian 软件包的标准约定时遇到了麻烦:

  • lib<名称>.deb
    • /usr/lib/<名称>.so.<主要版本>.<次要版本>
    • /usr/lib/<name>.so.<major version> -> sim 链接到第一个
  • lib<名称>-dev.deb
    • /usr/lib/<name>.so -> sim 链接到第一个
    • /usr/include/<名称>.h

我想知道的是,如何使用 CPack 的 DEB 生成器将符号链接分开?有没有办法将符号链接放在不同的组件中?

谢谢

4

1 回答 1

1

IRC 上的某个人 (#cmake@freenode) 指出我可以将 NAMELINK_ONLY 用于一个安装命令,并使用 NAMELINK_SKIP 进行重复安装。然后,如果我为每个指定不同的 COMPONENT,它就会具有我正在寻找的行为。

例子:

install(TARGETS project
        LIBRARY
        DESTINATION lib
        COMPONENT runtime
        NAMELINK_SKIP
)

install(TARGETS project
        LIBRARY
        DESTINATION lib
        COMPONENT dev
        NAMELINK_ONLY
)
于 2015-01-22T13:27:26.677 回答