天天看點

DCMTK編譯過程詳解

醫學圖像開發免不了要使用DCMTK包做DICOM圖像的解析和相關操作,在使用DCMTK工具包時,首先需要CMAKE編譯源碼,生成我們開發需要的檔案,筆者根據自身編譯的實戰經驗,詳細講述一下DCMTK的編譯過程。

準備工作:

  • 從官網下載下傳dcmtk源碼
    DCMTK編譯過程詳解
  • 下載下傳編譯需要的支援包:下載下傳VS編譯器對應的版本
    DCMTK編譯過程詳解
  • 從官網下載下傳CMake工具(這一步比較簡單,自己下載下傳)

編譯過程

STEP1:在自己的本地磁盤上建立一個檔案夾,将上述下載下傳的檔案統一放在該檔案夾下(假設為D:\DCMTK)

DCMTK編譯過程詳解

**STEP2:**将上述的下載下傳的三個壓縮封包件解壓到目前目錄下

DCMTK編譯過程詳解

**STEP3:**在該目錄下建立兩個檔案夾:dcmtk-bulid;dcmtk-bin

dcmtk-build:存放CMAKE配置和編譯後的工程項目

dcmtk-bin:存放VS編譯後生成的項目開發中用到的檔案,頭檔案、連結檔案……

DCMTK編譯過程詳解

**STEP4:**打開cmake檔案夾目錄下bin檔案夾中的cmake-gui程式

DCMTK編譯過程詳解

**STEP5:**選擇源碼路徑(dcmtk源碼檔案夾)和編譯檔案路徑(dcmtk-build檔案夾)

DCMTK編譯過程詳解

STEP6:點選Configure按鈕,選擇相應的編譯器,開始配置過程,這個過程有點長,需要耐心等待

DCMTK編譯過程詳解

**STEP7:**等待配置完成,将Grouped和Advanced選項設定為選中狀态,修改幾個以下設定:

DCMTK編譯過程詳解

将下載下傳的支援庫目錄對應的加入WITH清單中

WITH_LIBCONVINC:D:/DCMTK/dcmtk-3.6.2-win32-support_MD-msvc-12.0/libiconv-1.15

WITH_LIBPNGINC:D:/DCMTK/dcmtk-3.6.2-win32-support_MD-msvc-12.0/libpng-1.6.30

WITH_LIBTIFFINC:D:/DCMTK/dcmtk-3.6.2-win32-support_MD-msvc-12.0/libtiff-4.0.8

WITH_LIBXMLINC:D:/DCMTK/dcmtk-3.6.2-win32-support_MD-msvc-12.0/libxml2-2.9.4

WITH_OPENSSLINC:D:\DCMTK\dcmtk-3.6.2-win32-support_MD-msvc-12.0\openssl-1.1.0f

WITH_ZLIBINC:D:/DCMTK/dcmtk-3.6.2-win32-support_MD-msvc-12.0/zlib-1.2.11

更改下圖中的幾個選項,将下圖中的勾選的幾個選項選中

DCMTK編譯過程詳解

修改CMAKE_INSTALL_PREFIX路徑為D:/DCMTK/dcmtk-bin

DCMTK編譯過程詳解

修改完上述設定後,點選Configure再次配置,如果有問題會出現紅色,沒問題的話直接點選Generate生成項目

DCMTK編譯過程詳解

**STEP8:**點選Open Project按鈕啟動VS打開生成的工程項目,選中ALL_BUILD右鍵生成,等待ing……

DCMTK編譯過程詳解

等待編譯完成,如果沒有問題,應該如下圖所示

DCMTK編譯過程詳解

**STEP9:**打開D:\DCMTK\dcmtk-3.6.2-win32-support_MD-msvc-12.0\openssl-1.1.0f\bin,目錄下面有幾個動态連結庫檔案,我們需要修改D:\DCMTK\dcmtk-build\dcmnet\apps目錄下的cmake_install.cmake檔案,用記事本打開該檔案,修改紅框框住的兩個檔案名,

DCMTK編譯過程詳解
DCMTK編譯過程詳解

修改為

DCMTK編譯過程詳解

如果不修改上述檔案名,INSTALL的時候将會出現如下錯誤:

DCMTK編譯過程詳解

**STEP10:**完成上述修改後,在VS解決方案管理器中選擇INSTALL,右鍵 > 僅用于項目 > 僅生成INSTALL

DCMTK編譯過程詳解

生成成功。

DCMTK編譯過程詳解

回到D:\DCMTK\dcmtk-bin目錄下,結果如下:

DCMTK編譯過程詳解

至此,編譯過程結束,dcmtk-bin目錄下的檔案就是我們日後開發中需要的檔案。

繼續閱讀