最近寫的專案需要在64位的伺服器上,結果32位下編譯的不能用,只好重新編譯一套64位的。在編譯gdal時,出現了連線錯誤,如下:
link : error lnk2001: unresolved external symbol > _octnewcoordinatetransformation at 8按照gdal論壇中的方式(link : error lnk2001: unresolved external symbol _vbsafearraytoptr at 16
link : error lnk2001: unresolved external symbol _gdalditherrgb2pct at 28
link : error lnk2001: unresolved external symbol > > _gdalcomputemediancutpct at 32
link : error lnk2001: unresolved external symbol _gdalreprojectimage at 48
link : error lnk2001: unresolved external symbol _gdal******imagewarp at 36
link : error lnk2001: unresolved external symbol _ogrregisterall
link : error lnk2001: unresolved external symbol _ogr_g_getpointcount
link : error lnk2001: unresolved external symbol _optgetprojectionmethods
link : error lnk2001: unresolved external symbol _osrvalidate
link : error lnk2001: unresolved external symbol _ogrfeaturestylepuller
)不是很清楚。
以下是我編譯的步驟,哥研究了很長時間滴:
1:在gdal目錄下的nmake.opt檔案中,找到sym_prefix的定義,應該在438行左右現在開始編譯吧,呵呵。祝你成功!將sym_prefix=_ 改為sym_prefix= 就是將最後的下劃線去掉
2:在gdal目錄下的makefile.vc檔案中,找到46行左右的**,如下:
base_include = /include:_gdal******imagewarp@36 /
/include:_gdalreprojectimage@48 /
/include:_gdalcomputemediancutpct@32 /
/include:_gdalditherrgb2pct@28 /
/include:_octnewcoordinatetransformation@8 $(vb6_safearraysym)
修改為:
base_include = /include:$(sym_prefix)gdal******imagewarp /
/include:$(sym_prefix)gdalreprojectimage /
/include:$(sym_prefix)gdalcomputemediancutpct /
/include:$(sym_prefix)gdalditherrgb2pct /
/include:$(sym_prefix)octnewcoordinatetransformation $(vb6_safearraysym)
就是將後面的@開始,後面的數字刪除。
ps:最新版的gdal1.73版本直接可以在vs2008(vs2005也應該可以,沒有測試)中選擇x64編譯,是直接可以編譯過去的。前提是需要修改nmake.opt大概第一百行左右中的,win64 = yes
Windows平台Adreno SDK編譯與執行
adreno sdk是高通提供的opengl開發sdk包,我們可以從裡面學習到很多opengl知識,也能夠加深對高通adreno gpu特性的了解。編譯前準備 1 進入adrenosdk development tutorials opengles目錄,我們嘗試編譯裡面的01 createwindo...
boost 編譯,windows平台
2編譯及安裝boost庫 進入dos環境,利用cd命令進入一中解壓的boost檔案根目錄,輸入bjam toolset gcc prefix c boost install進行編譯,此命令會把編譯後的boost檔案安裝到c boost下 注意 命令列中前後不可以有空格,資料夾名字隨便取,但是乙個資料...
GDAL庫的編譯
gdal庫的編譯相對簡單,這裡以在vs2005環境,應用到c 程式中為例進行編譯 gdal and mapserver build sdk packages provides to compile mapserver and gdal by yourself 使用vs2005提供的cmd工具,定位到...