劉璟博
從上世紀(jì)九十年代以來(lái),GNSS技術(shù)廣泛應(yīng)用于大地測(cè)量、地球動(dòng)力學(xué)、工程測(cè)量領(lǐng)域、以及交叉學(xué)科GPS氣象學(xué)等,GPS靜態(tài)觀測(cè)數(shù)據(jù)的高精度后處理軟件受到了大地測(cè)量學(xué)界的廣泛重視,取得了長(zhǎng)足進(jìn)步。GAMIT解算精度高,提供免費(fèi)使用且開(kāi)放源代碼,可以滿足科學(xué)研究和精密工程測(cè)量等工作的需要。
雖然這方面的文章以前已有不少,但針對(duì)fedora系統(tǒng)的卻幾乎沒(méi)有,且隨著linux系統(tǒng)的更新和發(fā)展,前些年的安裝介紹文章已經(jīng)無(wú)法適用于近兩年新發(fā)布的操作系統(tǒng)版本以及新版本gamit軟件及gcc編譯器軟件了,且對(duì)gamit軟件安裝步驟的介紹往往存在不夠詳細(xì)和不夠準(zhǔn)確的問(wèn)題,筆者從2011年開(kāi)始接觸gamit軟件,沒(méi)有采用如redhat9等老linux系統(tǒng),而是使用了代表linux系統(tǒng)最新發(fā)展成果的Fedora15/16/17系列操作系統(tǒng)。使用新的系統(tǒng)和軟件意味著一定會(huì)遇到之前可能沒(méi)有出現(xiàn)過(guò)的新問(wèn)題,這需要我們進(jìn)行探索和解決。
Fedora Linux/Unix操作系統(tǒng)是一種新銳而且成熟的Linux操作系統(tǒng),曾由RedHat公司支持現(xiàn)已完全獨(dú)立,平均每半年推出一個(gè)新的版本,包括預(yù)覽版、Beta版和正式版,2017年8月又推出了Fedora 26正式版,F(xiàn)edora新版Linux系統(tǒng)具有更新快、集成Linux系統(tǒng)最新前沿發(fā)展成果、集成主流電腦硬件驅(qū)動(dòng)、集成眾多軟件功能包和圖形化桌面、可以直接讀寫(xiě)FAT32及NTFS格式硬盤(pán)閃存盤(pán)、完全開(kāi)源(OS)免費(fèi)、適合開(kāi)發(fā)者及科研人員使用等特點(diǎn)。
Fedora的安裝包格式是rpm格式。采用DNF軟件管理器下載安裝RPM包,dnf自動(dòng)解決依賴關(guān)系,十分方便。
1 gcc(帶gfortran)安裝流程
Gamit軟件需要gfortran編譯器的支持,而gfortran則是gcc編譯器的一個(gè)組成部分,可以說(shuō)gcc安裝成功與否將直接決定最后gamit能否真正安裝成功和正常運(yùn)行。而gcc的安裝也是整個(gè)gamit安裝中最復(fù)雜且耗時(shí)最久的一步。
1.1 yum命令自動(dòng)安裝最新版本gcc編譯器
使用終端命令dnf install gcc,通過(guò)在線安裝源安裝當(dāng)下默認(rèn)版本。
1.2 源代碼安裝合適(較低)版本的gcc編譯器
通過(guò)上段分析說(shuō)明可知必須基于新版存在bug的gcc編譯器來(lái)編譯安裝較低版本的gcc,我選擇源代碼安裝的是gcc-6.3.0版本。
安裝gcc需要GMP、MPFR、MPC這三個(gè)函數(shù)庫(kù)對(duì)應(yīng)的4.2、2.3.1、0.8.0以上的版本,可以在gcc支持網(wǎng)站發(fā)布頁(yè)網(wǎng)址ftp://gcc.gnu.org/pub/上找到。
1.2.1 源代碼安裝支持庫(kù)函數(shù)
具體來(lái)說(shuō)MPFR依賴GMP,MPC則依賴GMP和MPFR。所以三個(gè)庫(kù)函數(shù)的安裝順序?yàn)镚MP,MPFR,MPC。我選用的成功組合為gmp-4.3.2,mpfr-3.0.0,mpc-0.9。
首先安裝GMP。具體的命令形式如下:
../gmp-4.3.2/configure --prefix=/root/bin/gmp-4.3.2
其中prefix之后的代碼說(shuō)明了該庫(kù)會(huì)被安裝在何處,選擇了/root/bin/gmp-4.3.2目錄,三個(gè)庫(kù)函數(shù)的安裝均需要該命令項(xiàng)。
完成后該庫(kù)函數(shù)的編譯目錄下會(huì)新生成一個(gè)makefile文件,如若想要開(kāi)始編譯,在終端依次輸入
Make;make check;make install
于是就完成了gmp的安裝。Mpfr、mpc的安裝命令形式差不多。后續(xù)命令要加入庫(kù)函數(shù)間的依賴關(guān)系代碼。
1.2.2 編譯安裝gcc-6.3.0
先建立一個(gè)編譯gcc的中間文件夾(可取任意名字),命令如下:
接著是命令:
make bootstrap和make install
這步make的時(shí)間會(huì)比較長(zhǎng),大概從四十分鐘到兩個(gè)小時(shí)之間,選擇安裝語(yǔ)言種類越多需時(shí)越長(zhǎng),新版本GCC的編譯時(shí)間可能會(huì)更長(zhǎng),與電腦配置也有一定關(guān)系。
接著是建立軟連接,并刪除原來(lái)版本的可執(zhí)行文件或?qū)⑵涓拿麄浞?,使用如下命令形式?/p>
# rm /usr/bin/gcc
# ln -s /root/bin/gcc-6.3.0/bin/gcc /root/bin/gcc
# rm /usr/bin/gfortran
# ln -s /root/bin/gcc-6.3.0/bin/gfortran /root/bin/gfortran
…… …… ……
但是我們安裝及使用gamit只需要較低版本的gfortran編譯器,其他的如gcc、g++編譯器當(dāng)前版本很可能并無(wú)問(wèn)題,所以最好使用系統(tǒng)原先自帶的,以避免出現(xiàn)一些難以預(yù)料和理解的錯(cuò)誤。
1.2.3 驗(yàn)證gfortran-6.3.0安裝是否成功
終端輸入命令gfortran –v,應(yīng)出現(xiàn)以下行輸出結(jié)果:
[root@localhost ~]# gfortran -v
使用內(nèi)建 specs。
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/root/bin/gcc-6.3.0/libexec/gcc/i686-pc-linux-gnu/6.3.0/lto-wrapper
目標(biāo):i686-pc-linux-gnu
………………
線程模型:posix
gcc 版本 6.3.0 (GCC)endprint
則證明gcc-6.3.0編譯安裝成功,且系統(tǒng)默認(rèn)使用gfortran-6.3.0版本,我們的目的達(dá)到了。當(dāng)然,因?yàn)闆](méi)有改變gcc、g++和gcj的默認(rèn)路徑,如果輸入gcc -v,g++ -v等命令,輸出結(jié)果仍然使用的是4.6.x版本。
這樣就算是大功告成了,之后再進(jìn)行g(shù)amit的編譯安裝或解算處理數(shù)據(jù)使用的就是gfortran-6.3.0編譯器了。
2 安裝GAMIT10.x
依次在終端輸入運(yùn)行以下命令:
dnf install tcsh; dnf install gmt; dnf install libX11*(bash下安裝)
Gamit軟件要求csh運(yùn)行環(huán)境,以上步驟中已經(jīng)安裝了csh庫(kù),所以運(yùn)行命令 chsh
更改路徑(輸入)/bin/csh后重新啟動(dòng)Fedora系統(tǒng),echo $SHELL,終端輸出/bin/csh,默認(rèn)環(huán)境已經(jīng)更改,這說(shuō)明tcsh成功安裝運(yùn)行。
準(zhǔn)備工作終于就緒,可以開(kāi)始正式安裝gamit:
把gamit10.x源安裝文件夾拷貝到root根目錄或根目錄下的一個(gè)子文件夾,文件夾gamit10.x即為安裝文件夾。
要把文件夾中install_software的右鍵屬性設(shè)置為可以可執(zhí)行程序運(yùn)行。
在終端進(jìn)入安裝目錄(或把安裝目錄在終端打開(kāi)),輸入
./install_software
使GAMIT的安裝程序腳本install_software啟動(dòng),會(huì)依次提示是否解壓各模塊的壓縮包,以及是否使用升級(jí)包(如果軟件源目錄中存在的話)等,如果沒(méi)有特別要求和需要參數(shù)設(shè)置為默認(rèn)即可。GAMIT的升級(jí)包可以在其官方網(wǎng)站GAMIT-GLOBK Homepage中通過(guò)發(fā)郵件注冊(cè)申請(qǐng)的方式在其FTP資源服務(wù)器中獲得。
到最后一步會(huì)得到提示反饋:
確認(rèn)之后,得到安裝完成的最后提示,至此高精度GPS數(shù)據(jù)后處理軟件GAMIT的安裝已經(jīng)完成。而后續(xù)使用中需要的大地測(cè)量和地球物理各分支學(xué)科產(chǎn)生的各種表文件,則可以從國(guó)際GNSS服務(wù)組織(International GNSS Service,IGS)及其合作單位或組織的網(wǎng)站或FTP服務(wù)器中獲得免費(fèi)共享備份。
【參考文獻(xiàn)】
[1]GPS Analysis at MIT. GAMIT Reference Manual Release 10.6,2016.
[2]李征航,黃勸松.GPS測(cè)量與數(shù)據(jù)處理(第2版)[M].武漢大學(xué)出版社,2010.
[3]王志強(qiáng),李軍.GAMIT使用指南[J].全球定位系統(tǒng),2002.
[4]孫建,王勇.GAMIT在工程測(cè)量方面的使用技巧[J].礦山測(cè)量,2006,3(1).
[責(zé)任編輯:朱麗娜]endprint