如何为库编写CMake安装?

时间:2012-06-07 05:27:22

标签: cmake install libraries make-install system-paths

这是我的尝试:

IF (NOT WIN32)
  #INSTALL_TARGETS(${LIB_INSTALL_DIR} ${tinyscheme-nix_BINARY_DIR}/libtinyscheme.so)
  #INSTALL(TARGETS ${tinyscheme-nix_BINARY_DIR}/libtinyscheme.so DESTINATION ${LIB_INSTALL_DIR})
ENDIF()

两种变体都是错误的。我想将libtinyscheme.so${tinyscheme-nix_BINARY_DIR}移至/lib/lib64。基本上,我认为${LIB_INSTALL_DIR}会处理它。

我该怎么做?我的错误在哪里?

1 个答案:

答案 0 :(得分:4)

您可能希望此处FILES install版本而非TARGETS版本。

TARGETSinstall用于实际的CMake目标,这些目标已使用例如add_library。在这种情况下,您可以通过在add_library命令期间指定的名称来引用目标,而不是它的完整路径。

因此,在第二个命令中用TARGETS替换FILES将是我想到的方式。

有关install命令的完整详细信息,请运行:

cmake --help-command install