设为首页 收藏本站
查看: 769|回复: 0

[经验分享] How to compile and install NCAR Command Language on IBM PowerPC 64

[复制链接]

尚未签到

发表于 2015-10-3 15:04:36 | 显示全部楼层 |阅读模式
  作者:Sinsonglew 出处:http://www.cnblogs.com/sinsonglew 欢迎转载,也请保留这段声明。thanks :)
  
  注记:NCL官方依赖安装包全集列表、官方源码编译指导链接:http://www.ncl.ucar.edu/Download/build_from_src.shtml,以下安装步骤如有不明,请参见官网链接对应条目。
  

1. NCL安装文件目录说明
  ncl6.0.0 安装目录:/usr/ncar/ncl_ncarg-6.0.0
  ncl编译依赖库压缩文件目录:/usr/ncar/NCL Dependent Libs_tar.gz
  ncl编译依赖库已build的文件目录:/usr/ncar/NCL Dependent Libs_builded
  ncl源代码已build的文件目录(含源代码压缩包):/usr/ncar/ncl
  
  2 NCL安装步骤
  

2.1  配置环境变量
  配置环境变量之前:
  uname -m        //查看操作系统
  gcc --version      //查看编译器版本
  
  开始配置环境变量 , vi ~/.bashrc 在.bashrc文件中添加如下内容:



1          export LDFLAGS='-m64'
2
3          export CC=gcc
4
5          export CFLAGS='-m64 -O2 -g  -mcpu=powerpc64 -fPIC'
6
7          export CXXFLAGS='-m64 -O2 -g  -mcpu=powerpc64 -fPIC'
  配置完之后执行:source ~/.bashrc 刷新环境变量
  

2.2 JPEG version-6b



1     ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
2
3  
4     make all install
5
6     make install-lib
7
8     make install-headers
  

2.3 zlib version-1.2.6
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make all install
  

2.4 szip version-2.1
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0 --disable-shared
  make all install >& make-output
  

2.5 hdf5 version-1.8.8
  ./configure --with-zlib=/usr/ncar/ncl_ncarg-6.0.0 --with-szlib=/usr/ncar/ncl_ncarg-6.0.0 --prefix=/usr/ncar/ncl_ncarg-6.0.0 --disable-shared
  make check install
  

2.6 netcdf version-4.2
  CPPFLAGS=-I/usr/ncar/ncl_ncarg-6.0.0/include LDFLAGS=-L/usr/ncar/ncl_ncarg-6.0.0/lib
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0 --enable-netcdf-4 --disable-dap
  make check install
  注:man帮助文档 make时会报错, 可继续make install
  

2.7 HDF-4 version-4.2.6
  ./configure  --prefix=/usr/ncar/ncl_ncarg-6.0.0 --with-zlib=/usr/ncar/ncl_ncarg-6.0.0 --with-jpeg=/usr/ncar/ncl_ncarg-6.0.0                   --includedir=/usr/ncar/ncl_ncarg-6.0.0/include/hdf-4 --disable-netcdf --disable-fortran
  make check install

2.8 Jasper version-1.900.1
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make check install

2.9 GRIB2 version-1.2.1
  编辑makefile
  1)更改CC及CFLAGS,参见2.2.1节。
  2)DEFS行必须包含:"-DUSE_JPEG2000" and "-DUSE_PNG"
  3)64位操作系统,DEFS行必须包含"-D__64BIT__"
  4)把Jasper include 文件的路径加到"INC"行
  
  make all
  mv  libgrib2c.a  /usr/ncar/ncl_ncarg-6.0.0/lib
  cp  grib2.h  /usr/ncar/ncl_ncarg-6.0.0/include
  

2.10 PROJ.4 version-4.7.0 (4.8.0 make报错)
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0 --enable-static=yes --enable-shared=no
  make check install
  

2.11 libpng version-1.2.49
  ./configure  --with-pic --disable-shared --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make check install
  

2.12 GDAL version-1.9.0
  ./configure  --with-static-proj4=/usr/ncar/ncl_ncarg-6.0.0
  --prefix=/usr/ncar/ncl_ncarg-6.0.0 --without-pam \
  --with-png=/usr/ncar/ncl_ncarg-6.0.0
  --with-gif=internal - -with-libtiff=internal
  --with-geotiff=internal  --with-jpeg=/usr/ncar/ncl_ncarg-6.0.0
  --with-libz=/usr/ncar/ncl_ncarg-6.0.0 \
  --with-sqlite3=no --with-expat=no --with-curl=no --without-ld-shared \
  --with-hdf4=no --with-hdf5=no --with-pg=no --without-grib --disable-shared \
  --with-freexl=no --with-geos=no --with-odbc=no
  
  make all install

2.13 HDF-EOS 2 version-2.18v1.00
  编辑INSTALL-HDFEOS内容
  1) 429行 430分别改为
  echo 'LNX_COMP_FLAG="-m64"' >> hdfeos_env.ksh
  echo "LINUX_BRAND=linux64 # set LINUX for -64 mode" >> hdfeos_env.ksh
  2) 524行 535行分别改为
  echo 'setenv LNX_COMP_FLAG "-m64"'         >> hdfeos_env.csh
  echo "set LINUX_BRAND=linux64            # set LINUX for -32 mode" >> hdfeos_env.csh
  3) 1037行编译器设置,把原来的内容注释掉。
  CC="gcc -m64 "
  CFLAGS=" -O2 -g  -mcpu=powerpc64 -fPIC"
  LDFLAGS=" -m64 "
  
  Hdfeos的安装源代码目录假设为/usr/ncar/hdfeos/
  cd 到/usr/ncar/hdfeos/下,执行如下命令:
  bin/INSTALL-HDFEOS -i /usr/ncar/ncl_ncarg-6.0.0/include/hdf-4
  -l /usr/ncar/ncl_ncarg-6.0.0/lib
  -szi /usr/ncar/ncl_ncarg-6.0.0/include
  -szl /usr/ncar/ncl_ncarg-6.0.0/lib
  
  注:编译libhdfeos.a,再单独编译libGctp.a,一起复制到/usr/ncar/ncl_ncarg-6.0.0/lib下
  cp /usr/ncar/hdfeos/lib/linux/*.a  /usr/ncar/ncl_ncarg-6.0.0/lib
  cp /usr/ncar/hdfeos/include/*.h  /usr/ncar/ncl_ncarg-6.0.0/include/
  

2.14 HDF-EOS 5 version-5.1.14
  ./configure  CC=/usr/ncar/ncl_ncarg-6.0.0/bin/h5cc
  --with-hdf5=/usr/ncar/ncl_ncarg-6.0.0  --with-zlib=/usr/ncar/ncl_ncarg-6.0.0
  --with-szlib=/usr/ncar/ncl_ncarg-6.0.0 --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make check install
  
  cp  /usr/ncar/hdfeos5/include/HE5_GctpFunc.h /usr/ncar/hdfeos5/include/HE5_HdfEosDef.h /usr/ncar/ncl_ncarg-6.0.0/include/
  

2.15 pkg-config version-0.25
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  
  安装pkg-config成功后,编辑 .bashrc文件,加入以下内容:
  export PKG_CONFIG_PATH=/usr/ncar/ncl_ncarg-6.0.0/lib/pkgconfig
  export LD_LIBRARY_PATH=/usr/ncar/ncl_ncarg-6.0.0/cairo/lib
  export PATH=/usr/ncar/ncl_ncarg-6.0.0/bin:$PATH
  执行 source ~/.bashrc

2.16 freetype version-2.4.9
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make install
  

2.17 fontconfig version-2.9.0
  ./configure --sysconfdir=/usr/ncar/ncl_ncarg-6.0.0 --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  

2.18 pixman version-0.24.4
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  

2.19 expat version-2.1.0
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  

2.20 cario version-1.10.2
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  

2.21 Triangle software
  只把文件"triangle.c"、"triangle.h"复制到 $NCL/ni/src/lib/hlu目录下即可
  $NCL为下载的NCL源码存放路径,如/usr/ncar/NCL6.0.0
  

2.22 udunits version-2.1.24
  export PERL=""
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make check install
  

2.23 vis5d+ version-1.3.0-beta
  注:需要更新配置文件config.guess config.sub,登陆ftp://ftp.gnu.org/pub/gnu/config/; 将文本内容复制更新下载vis5d+目录下地对应文件。
  ./configure  --prefix=/usr/ncar/ncl_ncarg-6.0.0
  --with-netcdf=/usr/ncar/ncl_ncarg-6.0.0/lib/libnetcdf.a CPPFLAGS=-I/usr/ncar/ncl_ncarg-6.0.0/include
  --disable-fortran --disable-shared
  
  make check install
  

2.24 Flex version-2.5.33
  注:/usr/lib/libfl.a是32位的会报错,而程序链接是64位的,所以自己编译64位的,该库可选编译。
  ./configure --prefix=/usr/ncar/ncl_ncarg-6.0.0
  make
  make check
  make install
  

2.25 NCL6.0.0
  1) 执行配置,配置NCL的安装依赖库、include目录等
  cd到/usr/ncar/ncl/ncl_ncarg目录
  ./Configure  -v
  2) 把 "triangle.c"、"triangle.h"复制到 /usr/ncar/ncl/ncl_ncarg/ni/src/lib/hlu目录下即可,参见序号20,安装Triangle software
  3) 修改/usr/cipasWeb/ncl/ncl_ncarg/config目录下Template文件,替换LD、LD_REL两行内容为如下:
  /*LD            = LdCommand*/
  /*LD_REL   = LdRelCommand*/
  LD              =  ld -m elf64ppc
  LD_REL       =  ld -m elf64ppc
  4) 更改目录/usr/ncar/ncl/ncl_ncarg/ncarview/src/lib/libncarg_ras下
  hdf.c文件的头文件 hdf/hdf.h 为 hdf-4/hdf.h
  hdf.c文件的头文件 hdf/df.h 为 hdf-4/hdf.h
  hdf.c文件的头文件 hdf/dfgr.h 为 hdf-4/dfgr.h
  5) 更改目录/usr/ncar/ncl/ncl_ncarg/ni/src/ncl下
  NclHDF.c文件的头文件 hdf/mfhdf.h 为 hdf-4/mfhdf.h
  NclHDFEOS.c文件的头文件 hdf/mfhdf.h 为 hdf-4/mfhdf.h
  NclHDFEOS5.c文件的头文件 hdf/mfhdf.h 为 hdf-4/mfhdf.h
  6) 库配置文件:/usr/ncar/ncl/ncl_ncarg/config/Site.local下内容
  #define LibSearch -L/usr/lib64 -L/usr/ncar/ncl_ncarg-6.0.0
  #define IncSearch -I/usr/include/X11
  -I/usr/ncar/ncl_ncarg-6.0.0/include
  -I/usr/ncar/ncl_ncarg-6.0.0/include/freetype2
  7) 编辑/usr/cipasWeb/ncl/ncl_ncarg/config/LINUX下内容
  注释掉define ByteSwapped --->/*#define ByteSwapped*/
  删除#define StdDefines  -DSYSV -D_POSIX_SOURCE -D_XOPEN_SOURCE -DByteSwapped中此项-DByteSwapped
  在#StdDefines行中添加-DNGLONG2XINT选项
  #define StdDefines  -DSYSV -D_POSIX_SOURCE -D_XOPEN_SOURCE -DNGLONG2XINT
  8)进行安装
  cd到/usr/ncar/ncl/ncl_ncarg目录
  按下面英文说明进行安装
  /**********************************************************************/



  You have completed the configuration process. Once you exit this
program you may initiate the installation procedure by typing:
make Everything >& make-output &
You can watch the output with:
tail -f make-output
If this is not your first installation attempt, and you simply
made some changes in the configuration, restart the process using:
make All >>& make-output &
This command does not erase object code that has already
been compiled.
Both of these commands run the installation procedure
in the background, and you can track its progress
by periodically examining the file "make-output" while
the installation proceeds.
  9) 检查make是否出错
  打开make-output文件,搜索"Error",看是否有make error. 如有error,检查以上 1-7 项是否配置正确。
  

2.26 NCL安装后配置环境变量
  vi ~/.bashrc  在bashrc文件中添加如下环境变量
  export NCARG_ROOT=/usr/cipasWeb/ncl_ncarg-6.0.0
  export PATH=$NCARG_ROOT/bin:$PATH
  export NCARG_FONTCAPS=$NCARG_ROOT/lib/ncarg/fontcaps
  export NCARG_GRAPHCAPS=$NCARG_ROOT/lib/ncarg/graphcaps
  export NCARG_LIB=$NCARG_ROOT/lib
  添加完毕后执行命令 source ~/.bashrc
  

2.27 NCL 绘图环境初始化配置
  在用户目录下创建 .hluresfile文件,将如下内容粘贴到.hluresfile文件中,具体该文件的说明参见:http://www.ncl.ucar.edu/Document/Graphics/hlures.shtml
  



         !=========================================
! This is a sample .hluresfile. It should
! go in your home directory.
!
! Comments for ".res" files are preceded by a "!".
! Remember quotations are not used in .res files.

! White background/black foreground, these are the default in V6.1.0
*wkForegroundColor  : (/0.,0.,0./)
*wkBackgroundColor  : (/1.,1.,1./)

! Have a favorite colormap that you use for everything? You can
! make it your default here (note the name is NOT in quotes).
!
! In Version 6.1.0, the default is "ncl_default":
! http://www.ncl.ucar.edu/Document/Graphics/ColorTables/ncl_default.shtml
!
! For all available color maps, see
! http://www.ncl.ucar.edu/Document/Graphics/color_table_gallery.shtml
*wkColorMap         : BlueWhiteOrangeRed

! Font - this is the default in V6.1.0.
! Use times-roman to get the pre-V6.1.0 default.
*Font           : helvetica

! Function Codes [Default is a colon]
*TextFuncCode               : ~   

! Make default X11 window larger (adjust as necessary)
*wkWidth                     : 800
*wkHeight                    : 800

! Increase the default (16mb) contour memory
! For example, if you have gridded data that
! is larger than 500 x 500, you may need this.
*wsMaximumSize: 32556688
!==========================================
  

2.27 NCL 安装后测试
  测试的时候注意启动XSERVER
  export DISPLAY=localhost:10.0
  测试XSERVER命令: xclock
  
  测试NCL
  ng4ex gsun01n
  ncl gsun01n.ncl
  
  测试NCARG
  ncargex cpex08
  ctrans -d X11 cpex08.ncgm
  
  =================THE END, GOOD LUCK===================
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-122240-1-1.html 上篇帖子: IBM 笔记本电脑的隐藏分区 下篇帖子: acegi,IBM的Acegi Security System(4)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表