[Met_help] METv1.1 works well on 64bit-Linux system without pb2nc option.

杜振彩 dfeijat at gmail.com
Sat Mar 7 21:26:20 MST 2009


 
 Dear John,
Thanks for your help.
I did compile the METv1.1 successfully without the pb2nc by setting the line "DISABLE_PB2NC = 1 " in Makefile.
The option "BUFRLIB and PB2NC " is not compilable on the computer I use.
I did the steps you told me, but the libbufrlib.a couldn't work well.

I have a suggestion that during the time you release the new version of METv2.0, all the liberaries MET needed be included in the MET tar file.
That would help users.

Looking forward to see the new version MET released.

Sincerely,
ZhenCai, DU
祝好!
杜振彩
2009-03-08 12:07:39
**************************************
DU ZhenCai
Center for Monsoon System Research(CMSR), 
Institute of Atmospheric Physics(IAP), 
Chinese Academy of Sciences(CAS)
Add:    
P.O. Box 2718
Zhongguancun Avenue
Haidian District, Beijing, 100190
People's Republic of China
Tel:        +8610-62659180    +8610-82995178
Fax:       +8610-62560390
Mobile:  +8613401044797
Email: duzhc at mail.iap.ac.cn     dfeijat at 126.com    iapdzc at 163.com      
Net Tools:MSN:dfeijat at hotmail.com ;QQ:147085239 ;
http://xiaonei.com/iapdzc  
**************************************



ZhenCai,
You should be able to *COMPILE* fine on a 64-bit machine.  It's just that when you actually try to run PB2NC, you'll experience errors.  The error message I see below is that the compiler can't find
the BUFRLIB file for which it's looking.  I see that you're trying to use a version of BUFRLIB related to WRF in /disk2/hg/dzc/wrfpost/iowrf.  So the compiler is looking for the file
"/disk2/hg/dzc/wrfpost/iowrf/libbufr.a".  I'm not sure whether that will work on not.
If you are not able to build MET as 32-bit on your machine, I don't think you're going to have much luck running BUFRLIB and PB2NC right now.  So while I could help you to get them to compile, it
won't make much difference because of the runtime errors you'll see.
So I'd suggest the following:
(1) In the top-level MET Makefile, find the line for "DISABLE_PB2NC" and set it as:
   DISABLE_PB2NC = 1
   That turns off the compilation of the PB2NC tool.
(2) Try rebuilding MET and hopefully all of the other tools will build fine.
(3) Go into the scripts directory: cd scripts
(4) Edit the "test_all.sh" file by commenting out the line "test_pb2nc.sh".
(5) Run the other test scripts with: ./test_all.sh >& test_all.log&
(6) Watch the execution of the test scripts: tail -f test_all.log
If, for some reason, you would like to get BUFRLIB and PB2NC to actually compile, here's what you'd need to do:
(1) Retrieve BUFRLIB from http://www.nco.ncep.noaa.gov/sib/decoders/BUFRLIB/BUFRLIB.tar
(2) Untar it: tar -xvf BUFRLIB.tar
(3) Go into the BUFRLIB directory: cd BUFRLIB
(4) Build BUFRLIB with PGI using the following 3 commands:
   pgcc -c -DUNDERSCORE *.c
   pgf77 -c -DUNDERSCORE -Mnosecond_underscore *.f
   ar crv libbufr.a *.o
(5) Edit the top-level Makefile to point to the new location of BUFRLIB.
(6) Unset the "DISABLE_PB2NC" flag in the top-level Makefile.
(7) Rebuild MET with "make clean" followed by "make"
But as I've said, even if you get BUFRLIB and PB2NC compiled, you'll likely have problems at run time.
Hope that helps,
John
发件人: John Halley Gotway 
发送时间: 2009-03-06  01:10:09 
收件人: dfeijat 
抄送: met_help 
主题: Re: [Met_help] help with METv1.1 gmake on Linux system 
 
ZhenCai,
Thanks for sending the compilation log.  It makes it much easier to
diagnose the problem.
It looks like the linker doesn't like your version of NetCDF for some
reason.  Since MET is written primarily in C++, it links to the C++
interface for NetCDF.  It's looking in the directory
"/disk2/hg/dzc/netcdf/lib" for two files: libnetcdf.a and libnetcdf_c++.a
First, please verify that those two files exist in that directory.
Second, it may be the case that you built NetCDF with the GNU compilers
and are building MET with the PGI compilers.  You'll need to build them
both with the same family of compilers.
Please take a look at the following excerpt from the MET Online Tutorial:
http://www.dtcenter.org/met/users/support/online_tutorial/compilation/req_libs.php
In the section, "Compiling NetCDF", it lists out which environment
variables to set to tell the NetCDF configure script which compilers to
use.  I think the following settings would work for you to build NetCDF
with the PGI compilers:
cd "directory containing NetCDF"
make clean
setenv CC  /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgcc
setenv CXX /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgCC
setenv FC  /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgf90 or "" to
disable Fortran interface that MET doesn't use
setenv F90 /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgf90 or "" to
disable Fortran interface that MET doesn't use
./configure --prefix=/disk2/hg/dzc/netcdf
make
make install
Try working on your NetCDF build, and then try rebuilding MET.
If you haven't already done so, you should probably download the latest
set of bug fixes for METv1.1.  The single tar file named
"METv1.1_patches_20090212.tar.gz" contains all of them:
http://www.dtcenter.org/met/users/support/known_issues/METv1.1/index.php
Also, since you're building on a 64-bit machines, you will likely have
trouble using BUFRLIB and PB2NC.  Here's a discussion about problems on
64-bit machines:
http://www.dtcenter.org/met/users/support/known_issues/METv1.0/met_64_bit.php
And lastly, just to let you know, METv2.0 is due to be released in the
next couple of months.  We'll send an email when it's available.
Good luck,
John Halley Gotway
johnhg at ucar.edu
> Dear met_help,
>
> I am trying to compile the METv1.1 on Linux.
> However, something errors happened as followings,
> Can you give me some advices to fix it?
> Thanks in advance.
>
> Sincerely,
> ZhenCai, DU
> http://cmsr.iap.ac.cn
> Center for Monsoon System Research,
> Institute of Atmospheric Physics,
> Chinese Academy of Sciences
>
> 2009-03-05
>
> ==============================
> The Linux System I use:
> wrfpost/METv1.1> uname -a
> Linux XE1300 2.6.16.27-0.9-smp #1 SMP Tue Feb 13 09:35:18 UTC 2007 x86_64
> x86_64 x86_64 GNU/Linux
>
> wrfpost/METv1.1> cat /proc/version
> Linux version 2.6.16.27-0.9-smp (geeko at buildhost) (gcc version 4.1.0 (SUSE
> Linux)) #1 SMP Tue Feb 13 09:35:18 UTC 2007
> ===========================
> errors during gmake METv1.1:
>
> interest.cc:
> /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgCC set.cc -Bstatic   -c -I..
> -I/disk2/hg/dzc/netcdf/include
> set.cc:
> ar -rs libvx_wrfmode.a WrfMode_Conf.o engine.o interest.o set.o
> ar: creating libvx_wrfmode.a
> ranlib libvx_wrfmode.a
>
> cp libvx_wrfmode.a ../.
>
> *** Making pcp_combine application ***
>
>
> /disk2/hg/dzc/pgi716/linux86-64/7.1-6/bin/pgCC -o pcp_combine
> pcp_combine.cc \
> -Bstatic   -DMET_BASE=\"/disk2/hg/dzc/wrfpost/METv1.1\" \
> -I../../lib -I/disk2/hg/dzc/netcdf/include
> -I/disk2/hg/dzc/wrfpost/gsl112/include \
> -L../../lib -L/disk2/hg/dzc/netcdf/lib -L/disk2/hg/dzc/wrfpost/gsl112/lib
> \
> -lvx_met_util -lvx_analysis_util -lvx_wrfdata -lvx_met_util \
>         -lvx_contable -lvx_grib_classes \
> -lvx_econfig -lvx_gsl_prob -lgsl \
> -lvx_plot_util  -lvx_render -lvx_pxm -lvx_color -lvx_ps -lvx_afm \
> -lvx_data_grids -lvx_gnomon -lvx_nav -lvx_cal -lvx_util -lvx_math -lm \
> -lnetcdf_c++ -lnetcdf \
>
> pcp_combine.cc:
> pcp_combine.o: In function `write_netcdf__FLT1iR10GribRecord':
> pcp_combine.cc:(.text+0x2830): undefined reference to `NcFile::__ct(char
> const *, NcFile::FileMode, unsigned long *, unsigned long,
> NcFile::FileFormat)'
> pcp_combine.cc:(.text+0x285e): undefined reference to `NcFile::is_valid(
> const(void))'
> pcp_combine.cc:(.text+0x28dd): undefined reference to
> `NcFile::close(void)'
> pcp_combine.cc:(.text+0x29f3): undefined reference to
> `NcFile::add_att(char const *, char const *)'
> pcp_combine.cc:(.text+0x2b10): undefined reference to
> `NcFile::add_att(char const *, char const *)'
> pcp_combine.cc:(.text+0x2b35): undefined reference to
> `NcFile::add_att(char const *, char const *)'
> pcp_combine.cc:(.text+0x2b93): undefined reference to
> `NcFile::add_att(char const *, char const *)'
> pcp_combine.cc:(.text+0x2bcd): undefined reference to
> `NcFile::add_att(char const *, char const *)'
> pcp_combine.o:pcp_combine.cc:(.text+0x2bff): more undefined references to
> `NcFile::add_att(char const *, char const *)' follow
> pcp_combine.o: In function `write_netcdf__FLT1iR10GribRecord':
> pcp_combine.cc:(.text+0x32c2): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x32d4): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x32e9): undefined reference to `NcVar::add_att(char
> const *, float)'
> pcp_combine.cc:(.text+0x32ff): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x3315): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x332e): undefined reference to `NcVar::add_att(char
> const *, float)'
> pcp_combine.cc:(.text+0x3341): undefined reference to `NcVar::add_att(char
> const *, int)'
> pcp_combine.cc:(.text+0x336c): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x3397): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x33cf): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x33e4): undefined reference to `NcVar::add_att(char
> const *, float)'
> pcp_combine.cc:(.text+0x349a): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x34ae): undefined reference to `NcVar::add_att(char
> const *, long)'
> pcp_combine.cc:(.text+0x354c): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x3560): undefined reference to `NcVar::add_att(char
> const *, long)'
> pcp_combine.cc:(.text+0x35a5): undefined reference to `NcVar::add_att(char
> const *, char const *)'
> pcp_combine.cc:(.text+0x3756): undefined reference to `NcVar::put(float
> const *, long, long, long, long, long)'
> pcp_combine.cc:(.text+0x37b4): undefined reference to `NcVar::put(float
> const *, long, long, long, long, long)'
> pcp_combine.cc:(.text+0x380e): undefined reference to `NcVar::put(float
> const *, long, long, long, long, long)'
> pcp_combine.cc:(.text+0x389e): undefined reference to
> `NcFile::close(void)'
> gmake[3]: *** [pcp_combine] Error 2
> gmake[2]: *** [all] Error 2
> gmake[1]: *** [targets] Error 2
> gmake: *** [all] Error 2
> _______________________________________________
> Met_help mailing list
> Met_help at mailman.ucar.edu
> http://mailman.ucar.edu/mailman/listinfo/met_help
>


  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 43 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0001.gif 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 731 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0008.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 3844 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0009.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 2683 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0010.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 1893 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0011.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 906 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0012.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 6083 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0013.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 678 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0014.jpe 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 1166 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/met_help/attachments/20090308/0ddd0d95/attachment-0015.jpe 


More information about the Met_help mailing list