一、編譯步驟
解壓下載的GDAL源程序,并在命令行中切換到解壓目錄。
tar -xzvf gdal-2.1.3.tar.gz
cd gdal-2.1.3
GDAL可通過configure來實現(xiàn)一些自定義配置,可通過./configure –h命令來查看。--prefix=path表示設(shè)置GDAL的make install后的build目錄,里面有生成的頭文件和動態(tài)庫。輸入如下命令:
./configure --prefix=http://www.3lian.com/root/Test/gdalbuild
這時可以發(fā)現(xiàn)目錄中新生成了GDALmake.opt文件,該文件被包含在GNUmakefile中進行編譯。輸入命令:
make
make install
編譯完成后,生成的動態(tài)庫文件就在設(shè)置的目錄下。Include目錄下存放著頭文件,lib目錄存放動態(tài)庫文件,bin目錄存放可執(zhí)行文件如gdalinfo。
二、注意說明
1)注意這里是生成在自己設(shè)置目錄而不是默認目錄下,調(diào)用的時候需要設(shè)置環(huán)境變量或者拷貝到系統(tǒng)的lib目錄,或者不用設(shè)置—prefix參數(shù)編譯。
2)configure命令還可以用來設(shè)置debug版本或者release版本,只需要在后面添加--enable-debug參數(shù)就可以控制。默認情況下是關(guān)閉的。
--enable-debug enable debugging (disabled by default)
但我發(fā)現(xiàn)GDAL這個說明似乎有問題。我分別編譯了帶這個參數(shù)和不帶這個參數(shù)兩個版本:
帶參數(shù)--enable-debug:
不帶參數(shù)--enable-debug:
可以看到按照說明的release版本反而比debug版本體積大。一般而言,release版本總比debug版本信息小一點,而按照這篇文章《Linux下查看.so和可執(zhí)行文件是否debug編譯》進行檢查是否debug編譯,發(fā)現(xiàn)兩者都是存在debug信息的,release版本比debug版本debug信息少一條:
這樣到底哪個是debug版本反而弄不清楚了,只有留待以后研究了。