为什么 CPack 生成一个空包?
Why CPack generates an empty package?
存在一个创建一个控制台应用程序的 cmake 项目。
我为该 cmake 项目添加了包生成功能:
# ... above cmake code for one console application creation
# below code that I add:
#install
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "C:/Apps/Consolas" COMPONENT applications)
# pack
set(CPACK_PACKAGE_NAME ${PROJECT_NAME})
set(CPACK_PACKAGE_VENDOR "MyOrg")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack Component Installation Example")
set(CPACK_PACKAGE_VERSION "1.0.0")
set(CPACK_GENERATOR "ZIP")
include(CPack)
包创建成功,没有任何错误,(!)但是包是空的。
为什么会发生这种情况以及如何解决这个问题? (我用的是cmake 3.12.0)
DESTINATION
应该是包内的相对目录。
改为考虑以下内容:
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "bin" COMPONENT applications)
说明:CPack 将在将项目安装到 <build-dir>/_CPack_Packages
的子目录后创建 ZIP 文件。通过指定绝对路径,预期的子目录下不会安装任何文件,包将为空。
存在一个创建一个控制台应用程序的 cmake 项目。 我为该 cmake 项目添加了包生成功能:
# ... above cmake code for one console application creation
# below code that I add:
#install
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "C:/Apps/Consolas" COMPONENT applications)
# pack
set(CPACK_PACKAGE_NAME ${PROJECT_NAME})
set(CPACK_PACKAGE_VENDOR "MyOrg")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack Component Installation Example")
set(CPACK_PACKAGE_VERSION "1.0.0")
set(CPACK_GENERATOR "ZIP")
include(CPack)
包创建成功,没有任何错误,(!)但是包是空的。
为什么会发生这种情况以及如何解决这个问题? (我用的是cmake 3.12.0)
DESTINATION
应该是包内的相对目录。
改为考虑以下内容:
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "bin" COMPONENT applications)
说明:CPack 将在将项目安装到 <build-dir>/_CPack_Packages
的子目录后创建 ZIP 文件。通过指定绝对路径,预期的子目录下不会安装任何文件,包将为空。