VS2010編譯配置Blitz-0.9

masikkk發表於2013-10-17

Blitz是基於C++ template高效數值計算程式庫.

Blitz++提供了一個N維(1—10)的Array類,這個Array類以reference counting技術實現,支援任意的儲存序(row-major的C-style陣列,column-major的Fortran-style陣列),陣列的切割(slicing),子陣列的提取(subarray),靈活的Array相關表示式處理。另外提供了可以產生不同分佈的隨機數(F,Beta,Chi-Square,正態,均勻分佈等)的類也是很有特色的。

(1)下載blitz-0.9 

http://download.csdn.net/detail/masikkk/6414965


(2)解壓到某個路徑下,比如:D:\blitz-0.9,裡面有一個叫做Blitz-VS.NET.zip的檔案,解壓此檔案到當前目錄(即D:\blitz-0.9),此時D:\blitz-0.9\blitz目錄下會多一個子目錄:D:\blitz-0.9\blitz\ms,(如果沒有的話,去這個目錄找:D:\blitz-0.9\Blitz-VS.NET\blitz\ms,然後將其複製到D:\blitz-0.9\blitz\ms),裡面只有一個檔案:bsconfig.h,需要確保此檔案在D:\blitz-0.9\blitz\ms\bsconfig.h,後面編譯時要用。


(3)編譯生成 blitz_d.lib和blitz.lib

在用VS2010 開啟 D:\blitz-0.9\Blitz-VS.NET\blitz\blitz.vcproj工程之前需要注意, 它所使用的原始檔就是D:\blitz-0.9\src\globals.cpp   ,因為程式碼原作者為了保持程式碼的唯一份 , 所以沒有包括到這個Blitz-VS.NET的壓縮包中 , 你要將原 D:\blitz-0.9目錄下的 src 目錄拷貝到這裡(即拷貝到D:\blitz-0.9\Blitz-VS.NET目錄中)。

然後,開啟工程: D:\blitz-0.9\Blitz-VS.NET\blitz\blitz.vcproj,首先會進行版本轉換,轉換完成後進行工程的配置,進入工程的Property->VC++ Directories->Include Directories,填入D:\blitz-0.9。然後build solution,在進行Debug版的編譯時會出現兩個錯誤:

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: The command "copy /Y "D:\SDK\blitz-0.9\Blitz-VS.NET\blitz\Debug\blitz.lib" "D:\SDK\blitz-0.9\Blitz-VS.NET\blitz\lib\blitz.lib"
1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd" exited with code 1.

不用理會,這是 blitz 的 BUG,依然會生成需要的lib檔案。


(4)在VS工程使用blitz

只需要在使用blitz的工程中配置include目錄和lib檔案目錄即可。

參考

VS2010編譯配置Blitz-0.9


相關文章