小弟我是學氣象的,氣象最吃的開的就是模擬天氣,但是常常需要很大量的計算資源和硬碟空間,不才如小弟我剛好就是要負責這兩項工作的人,最近在國網中心ALPS測試WRF已經完成,但是小弟我不會用NCL也不會用Grads只會用RIP,於是乎要安裝前面兩項都很順利,但是到了要安裝RIP時就開始卡卡了。

首先先跟大家說我遇到的問題,一共有三個,我慢慢來跟各位客倌說明:

1. can't find lg2c

2.  undefined reference to "nf_"

3. undefined reference to "PNG"

要如何解決這三個問題,其實如果你是root的話就很簡單了,用"yum"這個指令就好了,如果你不是管理者,那只好請你去網路上找好心外國人(台灣人基本上很少人用linux)幫忙了,所以如果你是root請打,如果你是user就上網求救吧。

第一點的解決方法

root@pc1:yum install libg2c
user@pc1:wget http://好心人士的網站 

libg2c要找到跟你os 相容的阿 ~~ 不是隨便都可以用喔 !!!

第二點的解決方法(小弟我不是root所以只能裝在自己工作目錄下面)

記住當一看到nf的問題時,就要從netcdf去開始著手,目前netcdf我認為最好用最簡單設定的就是3.6.2版本了,4以上的netcdf很費工,原本安裝4.1.3版本,出現了上面第二點問題,而我從goole也找到解決方法(http://www.pgroup.com/userforum/viewtopic.php?t=2466&sid=6c617ef5d482ce7fb3c91cc4ba53cdf),這主要是說在netcdf裡面的library找不到nf的變數,而因為少了這個編譯參數的問題CPPLAGS=-Dpgifortran,這個參數主要意思是在說C和F語言之前的溝通,後來就把這些參數設定一下在重新安裝就可以了,不過後來我測試3.6.2版本,根本就不用加這些參數,原本default的設定就都可用了。

netcdf413

export CC=pgcc ; export CXX=pgcpp ; export FC=pgfortran ; export F90=pgfortran  ; export LD=pgfortran ; export CPPFLAGS="-DpgiFortran" 

先設定好環境再進行安裝就可以了

user@pc1:./configure --prefix=$workdir/opt/netcdf413; make ; make install

netcdf362

user@pc1:./configure --prefix=$workdir/opt/netcdf362; make ; make install

第三點解決辦法

跟第二點一樣,不過是在ncarg裡面找不到libpng的參數,主要是因為ncarg不是用單機安裝的,一般的ncl_ncarg都是ncar編譯好,我們去抓符合我們自己的os版本,直接使用,所以他連結到的libpng我們並不能使用,如果機器上原本就有在/usr/lib/有安裝那還可以編譯過去,但是如果沒有安裝,就必須自己安裝libpng並且指定位置了。

user@pc1:vi configure.rip 編譯configure.rip這檔案

NCARGLIBS = -L$NCARG_ROOT -lncarg -lcgm -lncarg_gks -lncarg_c -lX11 -lm -L$PNGLIB/lib -lpng 把編譯好的libpng路徑加上去

這樣就完成了RIP的編譯,看倌們有看有沒有懂呢 ??其實這個一點都不簡單阿 ~~ 所有的步驟困擾了我兩天的時間,有人跟我說國網中心有給錢的,幹嘛不叫他幫你安裝就好了,因為我不確定他會多久可以完成,再來因為帳號是跟人家借低啦,不好意思拿人家帳號使喚人。

創作者介紹

廖董不懂的部落格

廖董不懂 發表在 痞客邦 留言(0) 人氣()