VS2013+MITK+Qt5環境搭建

VS2013+MITK(德國版)+Qt5環境搭建日記

安裝VS2013

   儘管最新的VS版本是2015,但其與其他軟件或框架諸如CUDA7.5、qt5等的兼容性還不夠完善,所以我們選擇安裝VS2013 update 5版本,下載地址可以參考下列地址:

VS2013 update5 官網下載

VS2013Utimate
詳細安裝過程網上也有很多,很簡單,不再贅述。只不過需要加載很多包,需要很長時間,耐心等待。

安裝Qt5

選擇Qt5版本

在編譯MITK過程中,qt的版本很重要,一旦選擇錯誤的版本,會在cmake或者編譯MITK過程中出現各種錯誤
qt版本 可能出的錯誤
5.4或更高 cmake時,qtwebgitweights組件缺失
非openGL版 編譯MITK時,openGL相關的重定義

所以,我最後選擇了qt5.3.2-openGl版本,由於操作系統是64bit,所以選擇了64位的(大神說開發一般用32bit,both ok)。下載地址參考官方qt下載地址

安裝qt5.3和VS工具

安裝qt5.3.2沒什麼太多需要注意的,按照提示一路next下去。安裝路徑可以自由設定(後面會用到),本人是直接裝在了C盤。安裝完之後需要安裝qt-vs-addin,是將Qt插入VS的工具,下載地址

Visual Studio Add-in 1.2.5 for Qt5 (202 MB) (info)
這個文件在頁面中other downloads模塊。在它的下面有一個對VS2013工具下載項,才9兆(“這麼小,假貨吧”),應該可以,我當時沒有去嘗試,因爲太害怕整錯,現在一想,感覺自己笨笨噠。

安裝完之後,打開VS2013,會看到窗口目錄上多了一個QT5選項。

qt-addin安裝後

然後選擇QT5選項->Qt選項,添加Qt版本,add的路徑記得選擇MSVC2013_64_openGL目錄,最後默認QT版本,如下圖所示,就可以了。

配置qt option

然後再配置環境變量,我加入到path的路徑是C:\Qt\Qt5.3.2\5.3\msvc2013_64_opengl\bin,參照這個路徑,將你的Qt的路徑.“...\bin”加入到path中,需要注意的是,加完之後一定要一路確認出來,否則環境變量配置會無效。完事後,Qt就配置好了。

編譯MITK

選擇MITK和Cmake版本

MITK不同版本有不同的支持環境,在官網上都可以查看到,下載地址參考

MITK官網下載
201611版本要求MSVC2015,就算你安裝了MSVC2015,cmake能通過,但是VS2013卻無法支持MSVC2015,最後還是會失敗。之後我試過很多版本,諸如2015版本的,還有來自github的開源版本,編譯時都會出現很多錯誤,也許是我當時沒有將後面會講到的配置做好,反正最後201603版本成爲了我的選擇(錯誤最少啦)。大家也可以嘗試一下其他的。不過,201603是能用的最新的版本,個人還是推薦的。
對於Cmake版本的要求,主要來自於MITK中的makelists.txt文件,裏面要求最低版本爲Cmake3.2,我下載的版本是Cmake3.6.3,下載地址參考Cmake官網下載其實我也試過很多其他版本(“出錯了就找軟件麻煩,肯定是版本不對”,我之前就是這麼幹的啦,估計是換累了,最後換到3.6.3就沒動了),事實上應該沒啥影響,你想搞事情,可以和我不一樣咯,哈哈哈哈哈。

安裝Cmake並配置環境變量

安裝Cmake也沒啥可說的,一路next,路徑我是安裝在了D盤。然後配置環境變量,我是將D:\cmake\bin路徑加入到path,參照這一路徑,配置Cmake環境變量,重要的事又說一遍,添加完後,一路確認出來,否則沒有添加上去。

Cmake MITK

1.打開Cmake-GUI,在source code一欄選擇下載的MITK目錄,我的目錄是E:/MITK(這些個目錄最好都別含漢字),build the binaries目錄可以選擇新建的一個目錄,我新建了一個E:/MITK-build。

這裏寫圖片描述
2.去MITK所在的目錄下,找到cmakelists.txt文件,打開它如圖1,將set(CMAKE_PREFIX_PATH "C:/Qt/Qt5.3.2/5.3/msvc2013_64_opengl")加入到裏面,對照下圖2,就是把qt相關路徑告知cmake,你需要將路徑換成自己的內容,還有,路徑中是反斜槓“/”,務必修改。
這裏寫圖片描述
圖一
這裏寫圖片描述
圖二
3.保存文件txt後,回到cmake界面,點擊configure,選擇Visual studio 2013 Win64生成器(我的是64位系統)
,然後確定,應該會成功,然後在一片紅色中選擇你要編譯進去的組件,我的選擇是圖三這樣的,只選了圖裏展示出來的幾個。然後就再點擊configure,成功後,點擊生成,不出意外,應該會成功 。
這裏寫圖片描述
圖三

4.去到build the binaries目錄下,我的是E:/MITK-build,找到MITK-superbuild.sln文件,用VS2013打開,打開後,選擇ALL-BUILD生成解決方案,然後就是一個漫長的等待,大概2個小時,或許更長,由於會下載一些依賴的組件壓縮包,所以保持網絡通暢。
5.最後編譯可能會報錯,未成功。出現有關boost這個組件的錯誤,關閉VS2013後,你需要在環境變量中添加變量名是BOOST_ROOT變量值爲E:/MITK-build\ep\src\Boost(這個值就是生成目錄下的一個路徑,你需要對應地改成自己的生成的BOOST路徑),添加完後,重要的事情說三遍,一路“確定”退出環境變量設置。然後需要在cmake-gui裏面,選上Advanced按鈕,找到EXTERNAL_BOOST_ROOT參數,並將BOOST路徑加入,參照下圖四,填上你自己的路徑(E:/MITK-build就是我的build the binaries目錄)。然後重新configure,generate,重新去打開MITK-superbuild.sln,生成解決方案。

這裏寫圖片描述
圖四
6.如果沒有上面這個錯誤, 可能會出現一些文件內存在無法識別字符啥的,提示需要你將文件改成 Unicode格式,諸如mitkSlicedGeometry3D.cpp、alt_sstream_impl.hpp、mitkDiffusionHeaderSiemensDICOMFileHelper.cpp等文件,你需要點擊錯誤提示,然後這些文件都會出現在VS2013裏,Ctrl+A全選,然後在文件菜單:file->advanced save options ,在彈出的選項中選擇新的編碼方式爲:UNICODE(UTF8 帶簽名) 並保存。然後再生成解決方案,就會成功了。
圖五
圖五
7.編譯成功後,來到E:\MITK-build\MITK-build\bin(進入自己相應的目錄)下,打開debug.bat文件,可以出現MITK工作臺可視界面如圖六,到此,編譯工作圓滿結束。

圖六
圖六

總結

第一次做cmake編譯工作,由於不懂cmake的工作原理,所以出現bug後,很難去調試解決,經過反覆的摸索之後,我終於想要放棄了,哈哈哈,幸虧遇到了大神指點,我才一步步地完成了這項工作,十分感謝這位大叔(據) 。 大家可以加入MITK交流羣,一起討論學習,羣號242330546。                                                      
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章