日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

cmake开发环境 linux qt_一步步搭建CMake+QT+VTK+BOOST开发环境

發布時間:2023/11/27 生活经验 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cmake开发环境 linux qt_一步步搭建CMake+QT+VTK+BOOST开发环境 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

開發環境:

1、可以迅速處理大量并發網絡數據包,ASIO庫和winpcap 4.1.3庫;

2、處理與顯示點云模型數據,使用VTK 8.2.0庫;

3、項目使用CMake+VC2017編譯,GUI使用QT 5.12.5,Lib使用Boost 1.7.0與C++ 11;

4、開發工具QT Creator 4.1(VC2017輔助)、CMake 3.11.2,可以編譯32位與64位版本;

工具和庫的生成與配置:

1、VS2017與QT 5.12.5,CMake 3.11.2開發環境直接官網下載安裝即可。

2、Boost 1.7.0官網下載庫,然后編譯成64位Debug與Release版本,操作參考

指令如下

b2 install --toolset=msvc-14.1 --prefix="D:\ScanSource\download\Boost\vc141" link=static runtime-link=shared threading=multi debug release

3、VTK 8.2.0官網下載源碼,使用CMake-GUI工具,其中參數選擇支持QT,設置QT安裝路徑,執行編譯大概步驟如下:

QT5_DIR= C:\Qt\Qt5.12.6\5.12.6\msvc2017_64\lib\cmake\Qt5(設置QT5的目錄)

CMAKE_INSTALL_PREFIX=D:\ScanSource\VTK\msvc2017_64(編譯生成目錄)

編譯工程ALL_BUILD開始編譯生成庫文件(VC中選擇要編譯的版本,我選擇64位的debug和release),完成后選擇編譯INSTALL,他會把庫與頭文件拷貝到你設置的編譯生成目錄中。

4、winpcap 直接使用 VeloView項目中編譯后的文件,編譯方法應該大體相同。

使用CMake創建項目:

QTCreator與MSVC2017都支持通過CMakeLists.txt文件創建項目,但是我發現MSVC2017的QT插件沒能識別出QT項目,需要配置QT環境變量挺麻煩的,所以我最后使用QTCreator工具,工具內可以直接設置CMake參數,CMake的語法提示做的也挺好的。

CMake項目主體結構

Src/CMakeLists.txt (項目配置信息)

Src/main.cpp (項目所包含的cpp,h,cxx等等文件)

Lib (項目所需要的庫文件的 Lib include)

Build (通過CMake編譯出的項目文件,如果使用MSVC工具會生成工程文件,如果是QTCreator會生成一個Debug版本的對應平臺的目錄)

bin (我在CMakeLists.txt設定的程序生成路徑,Debug與Release分開存放,包括exe、dll 、config文件等等)

使用VC2107創建項目:

1、使用QT Creator創建一個CMake版本的QWidget窗體項目,然后使用CMakeGUI根據創建的CMakeLists.txt生成VC2017項目。(我偷懶用QTCreator直接生成了)

2、在CMakeGUI上設置項目的源碼目錄與項目生成目錄,點擊Configure,選擇VS2017 64位版本,點擊Configure開始編譯,如果CMakeLists.txt設定引用庫,會提示設定該庫的路徑。

3、 設置QT5DIR,我的開發環境是VS2017_64,所以找到安裝的對應目錄C:/Qt/Qt5.12.5/5.12.5/msvc2017_64/lib/cmake/Qt5設置一下,重新配置,然后生成,然后就可以用VS2017打開項目了。

設置VTK_DIR為 D:\ScanSource\Lib\VTK-8.2.0\lib\cmake\vtk-8.2,

設置Boost_INCLUDE_DIR為D:\ScanSource\Lib\boost_1_70_0,項目就可以編譯通過,然后點擊 Open Project,會使用MSVC2017打開項目。CMake-GUI設置位置

使用QTCreator創建項目

qtcreator工具可以直接設置CMake的參數,執行CMake命令就可以,沒有問題就可以編譯項目,其中CMakeLists.txt.user就是設置的變量保存位置。

項目中引用Boost庫與VTK庫,并且測試

1、Boost引用

find_package(Boost 1.70.0 REQUIRED)

if(Boost_FOUND)

message(Boost_INCLUDE_DIRS " ${Boost_INCLUDE_DIRS}")

message(Boost_DIR " ${Boost_DIR}")

set(Boost_LIBRARY_DIR "D:/ScanSource/Lib/boost_1_70_0/vc141/lib")

endif()

include_directories(${Boost_INCLUDE_DIRS})

link_directories(${Boost_LIBRARY_DIR})

2、VTK引用

find_package(VTK 8.2.0 REQUIRED)

if(VTK_FOUND)

message(VTK_DIR " ${VTK_DIR}")

endif()

.

.

.

include(${VTK_USE_FILE})

target_link_libraries(appname ${VTK_LIBRARIES})

3、測試版本

#include

#include

#include

#include

static void PrintEnv()

{

std::cout << "==== DeviceLib Ver" << DEVICE_COMMON_VERSION << "===============" << std::endl;

std::cout << "掃描設備驅動庫" << std::endl;

std::cout << "Boost 版本g:" << BOOST_VERSION << std::endl;

std::cout << "Boost Lib 版本:" << BOOST_LIB_VERSION << std::endl;

std::cout << "VTK 版本:" << VTK_VERSION << std::endl;

std::cout << "OS :" << BOOST_PLATFORM << std::endl;

std::cout << "編譯器:" << BOOST_COMPILER << std::endl;

std::cout << "標準庫:" << BOOST_STDLIB << std::endl;

std::cout << "============================" << std::endl;

}

總結

以上是生活随笔為你收集整理的cmake开发环境 linux qt_一步步搭建CMake+QT+VTK+BOOST开发环境的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。