1. 程式人生 > >Linux16.04 LTS 環境下將cmake的項目轉換成eclipse可導入可調試的工程項目

Linux16.04 LTS 環境下將cmake的項目轉換成eclipse可導入可調試的工程項目

open 結果 提示 warning lists lib .so文件 但是 ips

Linux作為一個開源系統,其中的一個優勢就是有效的將各種源碼編譯得到的庫集合在一起,為項目的使用創建了便捷。通常情況下,我們在開發自己的開源項目時,喜歡使用cmake調用各種三方庫,如opencv , pcl , g2o等,裏已有的函數輔助自己的程序開發,目前主流的方法是在項目中寫CMakeLIsts.txt文件,采用cmake命令將三方庫的動態庫鏈接到項目中,這種方法省去了在IDE中繁雜的環境配置問題。

已經寫好的項目的目錄結構一般的如下所示:

project----------------bin文件夾 用於存放生成的可執行文件

|---------------build文件夾 用於存放編譯,鏈接過程生成的文件

|---------------Include文件夾 用於存放項目源碼的頭文件

|---------------src文件夾 用於存放項目的.cpp文件

|---------------lib文件夾 用於存放項目的.so文件

|---------------CMakeLIsts.txt 由於cmake的文件

我們已經了解了cmake項目的目錄結構,一般的執行

cd build/

cmake ..

make

就可以在bin文件夾下生成項目的可執行文件。但是在linux系統下調試就遇到了問題,如果沒有IDE,那麽就只能用linux系統自帶的調試器調試了,個人感覺可視性不算太好。所以打算將cmake項目導入到eclipse中可調試。具體轉換命令見博客https://blog.csdn.net/wohuiluanshuo/article/details/49205221 , 如果生成可調試的eclipse項目的話,在編寫CMakeLIsts.txt時,應加上

set(CMAKE_BUILD_TYPE Debug)

按照博客的方法 ,如果執行

cd build/

cmake -G "Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug ..

會出現如下提示

技術分享圖片

會有CMake Warning 提示說在build文件夾下生成的eclipse項目在eclipse中不能得到很好的支持。事實證明這樣生成的eclipse項目不能在eclipse中運行

所以不在build文件夾下進行編譯 , 執行如下命令:

cd project/

cmake -G "Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug .

編譯結果如下:

技術分享圖片

可以看到沒有CMake Warning 了 ,導入到eclipse中可以編譯,可以運行程序,並且可以調試程序。

Linux16.04 LTS 環境下將cmake的項目轉換成eclipse可導入可調試的工程項目