前言
作為一個(gè)只淺學(xué)過(guò)C語(yǔ)言和C++的純小白,在編譯VTK(visualization toolkit)并與Qt結(jié)合的過(guò)程中遇到了很多問(wèn)題,零零碎碎也看了許多文章教程,但由于版本兼容、過(guò)程不完整等問(wèn)題走了許多彎路,最后東拼西湊勉強(qiáng)完成,故寫(xiě)下這篇文章供大家參考。
本文主要目的是安裝vs2017,Qt,Cmake以及VTK,并使Qt和VTK均可以在vs2017中使用。
一、安裝Visual Studio2017
1)官網(wǎng)下載可執(zhí)行的安裝程序
首先,到Visual Studio官網(wǎng)(www.visualstudio.com)下載安裝工具。
在搜索欄處搜索就能找到包括2017等以前版本
附直達(dá)網(wǎng)址:較古老版本——https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
2)安裝
VS 2017 下載完成后,雙擊下載好的可執(zhí)行文件即可進(jìn)入安裝界面:
1、點(diǎn)擊 “繼續(xù)” 按鈕,此時(shí)會(huì)彈出一個(gè)進(jìn)度條:
2、等進(jìn)度條完成后,會(huì)直接跳到下面的頁(yè)面:
3、選擇工作負(fù)載、組件,確定安裝位置:
我們只需要安裝 “使用C++ 的桌面開(kāi)發(fā)” 即可,其他如有需要可自行安裝;
同時(shí)在這個(gè)頁(yè)面,還可以選擇 VS 2017 的存儲(chǔ)位置;
然后直接點(diǎn)擊安裝,此過(guò)程可能需要一段時(shí)間,請(qǐng)耐心等待。
4、安裝完成:
VS 2017 會(huì)要求重啟計(jì)算機(jī),按要求重啟即可。
安裝成功后,首次使用 VS 2017 還需要對(duì)其進(jìn)行簡(jiǎn)單的配置,包括開(kāi)發(fā)環(huán)境和軟件本身的主題風(fēng)格。
啟動(dòng)Visual Studio 2017,會(huì)提示讓你登陸,可以登錄、注冊(cè),當(dāng)然直接略過(guò)也可。
3)啟動(dòng)
接下來(lái)選擇配置開(kāi)發(fā)環(huán)境:
我們使用主要進(jìn)行的是 C/C++ 程序開(kāi)發(fā),所以選擇 “Visual C++” 這個(gè)選項(xiàng),至于顏色主題選個(gè)順眼的就行,然后點(diǎn)擊 “啟動(dòng) Visual Studio” 按鈕。
最后,再等待幾分鐘的準(zhǔn)備過(guò)程啟動(dòng)就成功啦!
二、安裝Qt 5.9.9
1)下載可執(zhí)行的安裝程序
同樣先在Qt中文官網(wǎng)(https://www.qt.io/zh-cn/)下載安裝工具。
附直達(dá)地址:Qt Download—— https://download.qt.io/archive/qt/
Qt5.9是長(zhǎng)期支持版,會(huì)在較長(zhǎng)的時(shí)間內(nèi)獲得安全、維護(hù)和(有時(shí)有)功能的更新,因此我們選擇5.9.9
2)安裝
雙擊下載好的可執(zhí)行文件即可進(jìn)入安裝界面:
1、點(diǎn)擊”Next“
2、登錄賬號(hào),沒(méi)有的話去官網(wǎng)注冊(cè)一個(gè)即可
3、選擇安裝位置
(注意,安裝路徑不能帶空格、中文字符或者其它任何特殊字符,Qt的任何相關(guān)路徑都不能出現(xiàn)中文)
4、選擇需要的組件
QT中有很多的組件,抱歉我不是很懂,所以我把我覺(jué)得可能有用都下載了,我們要使用vs2017所以其中MSVC 2017 64-bit是必要的,其他的組件大家可以按照需求下載。但是選擇組件較多時(shí),會(huì)占用比較大的內(nèi)存,如果你的內(nèi)存不夠,最好還是多查一查。以下是我的選擇。
5、接著選擇”下一步“,”下一步“就完成了
3)配置環(huán)境變量
1、右擊計(jì)算機(jī)—屬性,點(diǎn)擊高級(jí)系統(tǒng)設(shè)置—環(huán)境變量
2、接下來(lái)點(diǎn)開(kāi)系統(tǒng)變量中的Path,點(diǎn)擊”新建“,輸入Qt安裝所在路徑下的msvc2017_64\bin文件夾,然后確定(如果你曾經(jīng)為python配置過(guò)環(huán)境,一定要點(diǎn)擊”上移“將Qt的路徑移動(dòng)到python的路徑上方)
完成以上內(nèi)容,Qt便安裝完成了!
三、安裝Cmake
1)下載可執(zhí)行的安裝程序
在官網(wǎng)下載安裝程序
直達(dá)網(wǎng)址:Cmake Download——https://cmake.org/download/
進(jìn)入Cmake下載網(wǎng)頁(yè)后,我們選擇最新的3.25.1版本,在文件列表中我們選擇最便于安裝的msi(環(huán)境:Windows 64位),如下圖所示。
2)安裝
下載完成后雙擊進(jìn)行安裝
1、歡迎界面,點(diǎn)擊“Next”
(因?yàn)橄螺d完成后有些下載頁(yè)面就無(wú)法打開(kāi)了,因此借用了一些別人的圖片)
2.同意協(xié)議,點(diǎn)擊“Next”
3、選擇第二個(gè)選項(xiàng)(安裝程序會(huì)將文件目錄添加至所有用戶的系統(tǒng)環(huán)境變量中),點(diǎn)擊“Next”
4、選擇安裝目錄(小提示:這個(gè)軟件不大只有100MB左右),點(diǎn)擊“Next”
5、點(diǎn)擊“Install”,等進(jìn)度條走完便安裝完成了
(因?yàn)橹斑x擇了自動(dòng)添加到系統(tǒng)變量for all users,因此我們不需要再手動(dòng)配置環(huán)境)
四、VTK的下載、配置、生成
1)下載VTK
直達(dá)地址:VTK官網(wǎng)——https://www.vtk.org/download/
1、我們選擇8.2.0版本,下載VTK-8.2.0.zip,如下圖所示:
(.zip是window系統(tǒng)的,.tar.gz是Linux系統(tǒng)的,不知為何最新的9.2.5沒(méi)有ZIP)
?VTKData和VTKLargeData都是官方示例程序中的數(shù)據(jù),如有需要可自行下載。
2、創(chuàng)建一個(gè)目錄(最好不要在C盤(pán)),命名為VTK,在其中新建五個(gè)目錄,分別命名為vtk_src、vtk_bin、vtk_res、vtk_debug、vtk_release,操作完成的結(jié)果如下圖所示:
(scr存放的是解壓后的vtk文件;bin存放的是編譯出來(lái)的項(xiàng)目文件;res作為中轉(zhuǎn);debug存放debug生成的文件;release存放release生成的文件)
3、將VTK-8.2.0.zip解壓到vtk_src文件夾中
2)VTK的配置、生成
1、打開(kāi)Cmake(之前看文章說(shuō)有的電腦要以管理員身份運(yùn)行不然后續(xù)Configure會(huì)卡住,但我沒(méi)有遇到此類問(wèn)題,寫(xiě)出僅供大家參考)。選擇兩個(gè)路徑,第一個(gè)是指源文件所在路徑即vtk_src,第二是指編譯生成的文件路徑即vtk_bin。下面兩個(gè)可選框Grouped和Advanced,推薦都勾上,其中Grouped會(huì)讓結(jié)果以分類形式呈現(xiàn),更加方便尋找;Advanced則會(huì)有更多的選項(xiàng)。然后點(diǎn)擊“Configure”。
2、點(diǎn)擊“Configure”后出現(xiàn)此窗口,選擇對(duì)應(yīng)版本的編譯器,如果選擇不對(duì),后面可能會(huì)提示錯(cuò)誤需要回到這邊重新選擇。如果你是x64的最好選擇x64。
此處我們第一欄選擇Visual Studio 15 2017,第二欄選擇x64,第三欄空中即可,下面四選一用默認(rèn)的第一個(gè)即可,如下圖然后點(diǎn)擊“Finish”。
3、之后需要稍等一會(huì)兒了,待進(jìn)度條走完后,便會(huì)出現(xiàn)一個(gè)喜慶的紅色界面,全部報(bào)錯(cuò),把寄打在公屏上,開(kāi)個(gè)小玩笑,這個(gè)只是要求你進(jìn)行設(shè)置的確定并不是報(bào)錯(cuò)。
我們需要勾選以下內(nèi)容:
(藍(lán)線劃出的即是更改的地方)
BUILD_SHARED_LIBS 動(dòng)態(tài)編譯,勾選上(我的默認(rèn)是勾上的)。
BUILD_EXAMPLES 是官方示例程序,建議勾上但不是必須。
CMAKE_INSTALL_PREFIX 這個(gè)表示vtk最后生成的鏈接庫(kù)的位置,默認(rèn)是C:/ProgramFiles /VTK,我們改為E:/VTK/vtk_res。
VTK_Group_Qt 勾選上。
4、勾選完成后再次點(diǎn)擊“Configure”,這次耗時(shí)會(huì)短很多,紅色區(qū)域變少了,主要是Qt方面的。
將Qt5_DIR等以Qt_5開(kāi)頭的選項(xiàng),改成自己Qt中 5.9.9/msvc2017_64/lib/cmake/* 中對(duì)應(yīng)的位置,如下圖(如果你之前Qt環(huán)境配置正確這里應(yīng)該是默認(rèn)填好的)
5、再次“Configure”,這時(shí)候紅色消失了,點(diǎn)擊“Generate”,然后等待進(jìn)度條走完即可。
6、打開(kāi)VTK項(xiàng)目
注意,不要直接在Cmake中點(diǎn)擊open project。
因?yàn)樵?strong>CMAKE_INSTALL_PREFIX路徑下寫(xiě)入文件需要管理員權(quán)限。所以我們?cè)谧烂嫔嫌覔鬡isual Studio 2017,以管理員身份運(yùn)行,然后在程序內(nèi)打開(kāi)VTK.sln。(VTK.sln就在我們之前建的vtk_bin當(dāng)中)
7、右擊右邊解決方案資源管理器里的ALL_BUILD,點(diǎn)擊“生成”,這時(shí)候會(huì)開(kāi)始編譯,這個(gè)過(guò)程時(shí)間有點(diǎn)小長(zhǎng),我大概用了二十分鐘。
8、在編譯完成后,在工具欄選擇Release x64,右擊右邊解決方案資源管理器里的INSTALL,點(diǎn)擊“生成”(如果在這一步報(bào)錯(cuò)setlocal,很有可能是沒(méi)有使用管理員身份運(yùn)行)
9、等進(jìn)度條走完vtk_res文件夾里出現(xiàn)了一些文件夾,將它們 剪切 到vtk_release中即可。
10、清空vtk_res后,在工具欄選擇Debug x64,再次右擊右邊解決方案資源管理器里的INSTALL,點(diǎn)擊“生成”,這次將vtk_res中生成的文件夾移動(dòng)到vtk_debug中。
至此,VTK的下載,配置,生成終于完成!
五、將VTK與Qt連接起來(lái)
因?yàn)镼t引入頭文件很麻煩,要在.pro把每個(gè)頭文件寫(xiě)一句引入語(yǔ)句,我不會(huì)什么快捷方法,有大佬寫(xiě)了腳本有興趣可以查一查。但是我比較熟悉Visual,它的引入頭文件就很簡(jiǎn)單,所以我選擇把VTK和Qt都在Visual Studio 2017打開(kāi),雖然步驟多但是簡(jiǎn)單移動(dòng)適。
1)在Qt的designer中加入VTK控件
找到vtk_release\plugins\designer中的QVTKWidgetPlugin.dll
將其復(fù)制到你的Qt目錄Qt_5.9.9\5.9.9\msvc2017_64\plugins\designer目錄下
在Qt_5.9.9\5.9.9\msvc2017_64\bin目錄下打開(kāi)designer.exe,就會(huì)增加控件,如圖:
2)在Visual Studio 2017中引入Qt
1、打開(kāi)Visual Studio 2017,在工具欄打開(kāi)工具,點(diǎn)開(kāi)其中的“擴(kuò)展和更新”,選擇聯(lián)機(jī),并在右側(cè)搜索框搜索Qt,下載Qt Visual Studio Tools。
2、下載好了以后在工具欄會(huì)出現(xiàn) “Qt VS Tools”,接下來(lái)點(diǎn)擊選擇Options。
3、出現(xiàn)以下窗口,選擇Qt,Versions,點(diǎn)擊。點(diǎn)擊黃色的文件夾圖標(biāo),然后選擇你的Qt目錄Qt_5.9.9\5.9.9\msvc2017_64\bin中的qmake.exe
完成后如下:
4、我們先新建一個(gè)Qt項(xiàng)目,如圖,不用改默認(rèn)選項(xiàng),一路“Next”、“Finish”即可。
(之后在VS中新建Qt項(xiàng)目都要重復(fù) 4 到 9 的步驟)
5、工具欄選擇“Qt VS Tools”,接下來(lái)點(diǎn)擊選擇“Qt Project Settings”
6、在“配置屬性”(注意修改的配置、平臺(tái)和使用的要相同)里選擇“VC++目錄”,在右邊點(diǎn)擊包含目錄,點(diǎn)擊最右邊的小箭頭,點(diǎn)擊編輯
7、點(diǎn)擊右上角的黃色文件夾,在其中添加你的Qt目錄中的Qt_5.9.9\5.9.9\msvc2017_64\include和Qt_5.9.9\5.9.9\msvc2017_64\lib
8、接下來(lái)我們要改變VS的字符編碼格式,不然在VS中用Qt寫(xiě)中文字符會(huì)報(bào)錯(cuò)。
在“配置屬性”里選擇“常規(guī)”,在“字符集”處選擇“使用多字節(jié)字符集”
9、在“配置屬性”里選擇“XML文檔生成器”,在“命令行”處“其他選項(xiàng)”中的最后加入“/utf-8”
10、如果想要使用ui,可以根據(jù)需要添加
在“配置屬性”選擇“Qt Project Settings”。在Qt Modules 中應(yīng)該至少包括 core, gui, widgets,點(diǎn)擊右邊小箭頭以添加ui tools,如下圖所示:
理論上,此時(shí)的Qt項(xiàng)目就可以正常運(yùn)行了!
但實(shí)際上我還是遇到了問(wèn)題,新的Qt項(xiàng)目可以運(yùn)行,但原來(lái)寫(xiě)的Qt項(xiàng)目現(xiàn)在運(yùn)行會(huì)報(bào)錯(cuò),我又去查了查,發(fā)現(xiàn)原來(lái)是windows SDK的版本問(wèn)題,解決方法如下:
11、右擊項(xiàng)目,選擇“重定向項(xiàng)目”,選擇新的版本即可,如下圖:
完成以上步驟,就徹底完成了??!
3)在Visual Studio 2017中引入VTK
這個(gè)就簡(jiǎn)單很多了,把VTK編譯生成的頭文件放進(jìn)包含目錄,再引入附加依賴項(xiàng)即可,可以參考上面Qt放入的步驟。
(也是之后在VS中新建項(xiàng)目都要重復(fù),但我確實(shí)沒(méi)想到什么好辦法)
在“配置屬性”里選擇“VC++目錄”,在右邊點(diǎn)擊包含目錄,點(diǎn)擊最右邊的小箭頭,點(diǎn)擊編輯。
點(diǎn)擊右上角的黃色文件夾,在其中添加你的VTK目錄中的VTK\vtk_release\include和VTK\vtk_release\lib
在“配置屬性”里選擇“鏈接器”中的“輸入”,在右邊點(diǎn)擊“附加依賴項(xiàng)”,點(diǎn)擊最右邊的小箭頭,點(diǎn)擊編輯。
在其中加入VTK\vtk_bin\lib\Debug和ITK\Build\lib\Debug中所有的.lib文件
(此處以Debug為例,可改為Realse)
當(dāng)然一個(gè)一個(gè)文件名復(fù)制不太現(xiàn)實(shí),或者說(shuō)太不現(xiàn)實(shí),以下有一個(gè)我找到的簡(jiǎn)單方法
簡(jiǎn)單方法如下:
(此處以itk為例,vtk參照以下步驟重復(fù)即可)
1、找到對(duì)應(yīng)的目錄
2、在上方路徑欄輸入“cmd”
3、在命令行輸入“dir /b *.lib>1.txt”
4、然后就會(huì)在對(duì)應(yīng)目錄下會(huì)新建一個(gè) 1.txt 文件,該文件包含當(dāng)前目錄下所有的.lib文件,直接復(fù)制粘貼即可使用文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-500482.html
六、結(jié)束語(yǔ)
作為一個(gè)純純的小白,為了完成以上內(nèi)容我看了很多文章,但多少都有點(diǎn)問(wèn)題,不是太古老就是我操作中會(huì)報(bào)錯(cuò),還有內(nèi)容不完整的。我是一邊查資料一邊試驗(yàn),零零散散的拼湊,所以我也不敢保證我說(shuō)的全部正確,如有錯(cuò)誤歡迎指正。
而且我也是初次學(xué)習(xí)使用VTK,如果有更好的使用方法,歡迎大家交流。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-500482.html
到了這里,關(guān)于win10下在Qt中使用VTK(安裝VS2017+安裝QT5.9.9+編譯配置VTK8.2.0)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!