|
在程序開發(fā)中,很多時候需要用到別人開發(fā)的工具包,如OpenCV和itk。一般而言,在vs2008中,很少使用源文件,大部分是使用對類進(jìn)行聲明的頭文件和封裝了類的鏈接庫(靜態(tài)lib或動態(tài)dll)。 如果要使用這些類,需要在文件中包含頭文件的名字,如#include “cv.h”。但這個并不夠,因?yàn)檫@個文件一般來說不在當(dāng)前目錄下,有兩種方法解決這個問題。一,將所包含的頭文件復(fù)制到當(dāng)前目錄(另一篇文章有寫)下,這個比較有局限性,因?yàn)槿绻^文件太多,這樣比較麻煩。二,將頭文件所在的路徑包括進(jìn)去,即添加包含(include)文件目錄。兩種方法:A.依次打開“項(xiàng)目——屬性——配置屬性——C++——常規(guī)——附加包含目錄”中加入所有的路徑。這里需要注意的是(1)路徑必須指向頭文件所在的子文件夾,而不能直到父文件夾就結(jié)束(2)每個路徑不需要加上雙引號,輸入了之后,vs2008會自動加上雙引號,如果自己加可能vs2008無法識別雙引號(3)如果是多個路徑,路徑直接用“;”隔開。B.[菜單]“工具->選項(xiàng)->項(xiàng)目和解決方案->C++ 目錄”,選擇對應(yīng)平臺,然后添加所需“包括文件”目錄。 除了頭文件以外,也需要告訴編譯器,類在哪里實(shí)現(xiàn)的,即封裝類的鏈接庫在哪里,這樣程序才能執(zhí)行工具包中的函數(shù)。 首先需要將鏈接庫的路徑輸入vs2008,即添加庫(libs)文件目錄。兩種方法:A.依次打開“項(xiàng)目——屬性——配置屬性——鏈接器——常規(guī)——附加庫目錄”中加入鏈接庫的路徑。B.[菜單]“工具->選項(xiàng)->項(xiàng)目和解決方案->C++ 目錄”,選擇對應(yīng)平臺。 然后添加所需“庫文件”目錄,即添加編譯所需要(依賴)的 lib 文件 。在“項(xiàng)目——屬性——配置屬性——鏈接器——常規(guī)——輸入——附加依賴項(xiàng)”中加入鏈接庫的名字,多個lib用空格隔開。(等同于“#pragma comment(lib, “xxx.lib”) ”語句)。
比如itk工具包在vs2008中配置。itk首先CMake一下,然后編譯,最后還要編譯Install。網(wǎng)上有很多文章給了一些配置的路徑什么的,特別是附加包含目錄,我覺得沒有說清楚。很多時候照搬或是稍微改動是不太正確的,因?yàn)槊總€人的安裝路徑不一樣,更主要的是CMake的時候每個人選擇的選項(xiàng)不一樣,產(chǎn)生的h文件有多有少等等,所以這里附加包含目錄只要把你所有生成的h文件的路徑輸入就好,一般而言在CMake輸入的install的路徑下會有一個include文件夾,h文件都在里面,把路徑逐一輸入即可。而庫文件目錄是CMake輸入的install的路徑下會有一個lib文件夾,lib文件都在這個文件夾下面。再添加編譯所需要(依賴)的 lib 文件,這樣就配置完成了。具體使用的時候如果要用哪個函數(shù),就把聲明這個函數(shù)的頭文件在cpp文件中加入即可,如加上#include “itkImage.h”。 |
|
|