zoukankan      html  css  js  c++  java
  • cmake 构建工程

    1、首先创建工程目录:/learn/cmake/project

      project目录中需要编写CMakeLists.txt

    2、在project中创建src子目录

      放置工程源代码,src目录中需要编写CMakeLists.txt

    3、在project中创建build子目录:
      编译目录,外部编译时:
      (cmake ..) 生成的编译需要的Makefile以及其他的中间文件,会在这个目录中
      (make) 生成的目标文件target会在build/bin目录中
     
    4、在project中创建doc子目录
      存放工程文档project.txt
     
    5、在project中添加文本文件COPYRIGHT,README;
      touch COPYRIGHT
      touch README
    6、在工程目录中添加一个runtarget.sh脚本,用来调用相应的二进制文件
     
    工程构建并编译完成之后,可以安装:
    在project中的CMakeLists.txt 中添加INSTALL指令来安装COPYRIGHT,README,runtarget.sh脚本,/doc/project.txt,target(可执行文件)

    注释:本例子中的目标文件为hello
    INSTALL(FILES COPYRIGHT README DESTINATION share/doc/cmake/t2)
    INSTALL(TARGETS hello RUNTIME DESTINATION bin)
    INSTALL(PROGRAMS runhello.sh DESTINATION bin)
    INSTALL(DIRECTORY doc/ DESTINATION share/doc/cmake/t2)

    现在进入 build 目录进行外部编译,注意使用 CMAKE_INSTALL_PREFIX 参数,这里我们
    将它安装到了/tmp/t2 目录:
    cmake -DCMAKE_INSTALL_PREFIX=/tmp/t2/usr ..
    然后运行
    make
    make install

    目前还存在的疑惑:

    1、为什么cmake编译好的文件需要安装呢,直接在生成的可执行文件中运行,或者直接把可执行文件复制到相应的目录,不可以吗?

    2、可执行文件hello 并不在项目目录下,为什么安装的时候,不需要指定目录呢?

     说明:文章参照《CMAKE实践》

  • 相关阅读:
    团队编程项目作业2-爬虫豆瓣top250项目代码设计规范
    《团队-爬取豆瓣电影TOP250-设计文档》
    个人编程作业1-GIT应用
    团队-爬取豆瓣Top250-开发环境搭建过程
    课后作业-阅读任务-阅读提问-1
    20170914-构建之法:现代软件工程-阅读笔记
    结对-贪吃蛇开发环境搭建过程
    结对-贪吃蛇游戏设计文档
    结对-结对编程项目作业名称-需求分析
    团队编程项目自我介绍
  • 原文地址:https://www.cnblogs.com/briskzou/p/12079573.html
Copyright © 2011-2022 走看看