码迷,mamicode.com
首页 > 其他好文 > 详细

用CMake 打包 deb包

时间:2014-12-15 20:28:41      阅读:680      评论:0      收藏:0      [点我收藏+]

标签:des   http   io   ar   sp   on   文件   bs   as   

这里只写出一些常用的:

1 版本控制信息:

    SET(MAJOR_VERSION 1)
    SET(MINOR_VERSION 0)
    SET(PATCH_VERSION 0)
    SET(CPACK_GENERATOR "DEB")
    SET(CPACK_PACKAGE_VERSION_MAJOR "${MAJOR_VERSION}")
    SET(CPACK_PACKAGE_VERSION_MINOR "${MINOR_VERSION}")
    SET(CPACK_PACKAGE_VERSION_PATCH "${PATCH_VERSION}")
    SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.3.1-6)")
    SET(CPACK_PACKAGE_DESCRIPTION "pro-cc service")
    SET(CPACK_PACKAGE_CONTACT "support@pro.com")
    include(CPack)

2 添加一些额外的依赖文件

SET(LIBS_DIR "$ENV{DBXML_DIR}/lib")
INSTALL(FILES ${CMAKE_SOURCE_DIR}/pro-cc.conf DESTINATION /etc/init)
INSTALL(FILES ${LIBS_DIR}/libdb-4.8.so ${LIBS_DIR}/libdbxml-2.5.so ${LIBS_DIR}/libxerces-c-3.0.so ${LIBS_DIR}/libxqilla.so.5 ${LIBS_DIR}/libxqilla.so.5.0.2  DESTINATION /usr/lib)

上面第二句的意思是 将pro-cc.conf文件安装时copy到 /etc/init下

第三句的意思是将库文件安装到/usr/lib下

生成deb包

make package

以上字段不一一讲解,很基础。不明白的可以百度或者cmake官网看文档。在cpack官网上说,cpack可以打包deb,但是始终没有找到如何加载额外的库文件到包里面,网上提供的一些没有尝试成功。就直接用INSTALL了

具体可参见:http://stackoverflow.com/questions/15461556/cpack-cannot-find-libraries-target-doesnt-exist-in-this-directory

http://www.cmake.org/Wiki/CMake:Component_Install_With_CPack

用CMake 打包 deb包

标签:des   http   io   ar   sp   on   文件   bs   as   

原文地址:http://my.oschina.net/mjRao/blog/356350

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!