亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

UBuntu CMake工程配置基礎

系統 2597 0

UBuntu CMake工程配置基礎 - sheismylife的專欄 - 博客頻道 - CSDN.NET


UBuntu CMake工程配置基礎


分類:
C++


1024人閱讀
評論 (1)
收藏
舉報

?

?

install CMake

我用CMake并不關注它的跨平臺特性,因為我只專注于64位 Linux C++ server領域。
sudo apt-get install cmake

chenshu@chenshu-ubuntu:~$ cmake —version
cmake version 2.8.3

HelloWorld工程

mkdir -p examples/helloworld
cd examples/helloworld

創建main.cpp 文件,代碼如下:

  1. #include?<stdio.h> ??
  2. int ?main()??
  3. {??
  4. ????printf( "Hello?World?from?Main!\n" );??
  5. ???? return ?0;??
  6. }??


創建CMakeLists.txt文件,配置如下:

  1. PROJECT?(HELLOWorld)??
  2. SET(SRC_LIST?main.cpp)??
  3. MESSAGE(STATUS?"This?is?BINARY?dir?"?${HELLO_BINARY_DIR})??
  4. MESSAGE(STATUS?"This?is?SOURCE?dir?"${HELLO_SOURCE_DIR})??
  5. ADD_EXECUTABLE(hello?${SRC_LIST})??


在同目錄下,運行cmake .
chenshu@chenshu-ubuntu:~/Ubuntu One/c++/cmake/examples/helloworld$ cmake .
— The C compiler identification is GNU
— The CXX compiler identification is GNU
— Check for working C compiler: /usr/bin/gcc
— Check for working C compiler: /usr/bin/gcc — works
— Detecting C compiler ABI info
— Detecting C compiler ABI info - done
— Check for working CXX compiler: /usr/bin/c++
— Check for working CXX compiler: /usr/bin/c++ — works
— Detecting CXX compiler ABI info
— Detecting CXX compiler ABI info - done
— This is BINARY dir /home/chenshu/Ubuntu One/c++/cmake/examples/helloworld
— This is SOURCE dir /home/chenshu/Ubuntu One/c++/cmake/examples/helloworld
— Configuring done
— Generating done
— Build files have been written to: /home/chenshu/Ubuntu One/c++/cmake/examples/helloworld


Makefile以及其他一些文件被cmake生成了。執行make命令,hello二進制文件被編譯出來。運行./hello,可以看到結果。
Hello World from Main!

make VERBOSE=1 可以看到詳細的編譯過程。
make clean 就可以清理工程

外部構建

HelloWorld采用內部構建,cmake產生的代碼和自己的源代碼文件在同一個目錄,非常不好。因此需要采用cmake的外部構建方式。
創建helloworld2目錄
這次創建一個src目錄存放源代碼,doc目錄存放項目文檔,
CMakeLists.txt需要出現在項目根目錄和src目錄中。
項目根目錄下的內容如下:
project (HelloWorld2)
add_subdirectory(src bin)
src目錄下內容如下:
add_executable(hello2 main.cpp)

創建一個build目錄
cd build
cmake ..
make
build/bin下會找到hello2可執行文件。

支持gdb調試

在src/CMakeLists.txt文件中添加一行: set(CMAKE_BUILD_TYPE Debug)

UBuntu CMake工程配置基礎


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 99久久国产综合精品2020 | 国产99久久九九精品免费 | 国产毛片女人18水多 | 久久亚洲一级α片 | 成人亚洲在线观看 | 日韩在线视频在线 | 亚洲午夜视频在线 | 久久99久久精品国产99热 | 久久草在线视频国产一 | 免费一级特黄a | 久久综合狠狠综合久久97色 | 一级毛片毛片毛片毛毛片 | 精品午夜久久影视 | 精品视频香蕉尹人在线 | 国内拍拍自拍视频在线观看 | 亚洲国产成人久久三区 | 一区精品在线 | 国产精品合集一区二区 | 一区二区三区四区在线观看视频 | 日韩中文字幕免费 | 久久99国产亚洲精品 | 日本欧美一区二区三区在线 | 亚洲国产精品二区久久 | 久久成人综合 | 最近中文字幕免费版在线3 最近中文字幕无吗高清视频 | 亚洲国产一区二区三区最新 | 久久性生大片免费观看性 | 亚洲综合日韩精品欧美综合区 | 国产精品视频999 | 久久成人国产精品二三区 | 狠狠色综合网 | 91热久久免费频精品动漫99 | 色综合综合网 | 一级网站片 | 日韩午夜在线视频不卡片 | 91精品免费不卡在线观看 | 神马影院我不卡手机版 | 九九视频九九 | 国产香蕉91tv永久在线 | 久久这里只有精品免费看青草 | 最新国产精品亚洲二区 |