VS2013環境下配置gsl1.8及常見問題
1. GNU Scientific Library (GSL)是一個開源的科學計算的函式庫,裡面有大量的數學計算 函式,非常強大: 在http://gnuwin32.sourceforge.net/packages/gsl.htm 頁面下載
Complete package, exceptsources Setup 以及 Sources Setup 分別進行安裝
2. 在目錄D:\Software\gsl\src\gsl\ 1.8\gsl-1.8\VC8 ,用VS2013 開啟libgsl.sln 檔案,在資源管理器中可以看到如下四個工程:
3. 把該工程的四個版本全部編譯(重新生成)一遍:(可能有點慢),
4. 然後把生成目錄預設libgsl 和libgslcblas 兩個目錄中的 .lib (共八個)檔案拷貝到和src 同一級的lib 檔案中,.dll 檔案(共四個)放到你的環境目錄可訪問(如system32 )或你的工程檔案中
5. GSL 的環境變數配置如下:
新增目錄為:D:\software\gsl\bin;
6. 工程屬性:
“包含目錄”新增:D:\ software\gsl\include
“庫目錄”新增:D:\ software\gsl\lib
“源目錄”新增:D:\ software\gsl\src\gsl\1.8\gsl-1.8
7. 分別在 release下新增:libgsl.lib;libgslcblas.lib
在debug下新增: libgsl_d.lib;libgslcblas_d.lib
8. 測試:
在test 工程中新增:
#include <gsl/gsl_sf_bessel.h>
Main 最後新增:
double x = 5.0;
double y = gsl_sf_bessel_J0 (x);
printf ("J0(%g) = %.18e\n", x, y);
return 0;
9. 常見問題
error LNK2001: 無法解析的外部符號_gsl_rng_mt19937
或者訪問gsl_rng_mt19937時發生access violation錯誤
解決方法:
專案---》屬性---》c/c++---》前處理器---》前處理器定義---》新增“GSL_DLL”