[Met_help] fm theo carter dubai re: failure during make
John Halley Gotway
johnhg at rap.ucar.edu
Tue May 26 07:13:31 MDT 2009
Theo,
In looking back at our messages back and forth, I still want to make sure you're using the correct version of BUFRLIB - and not one that's distributed with WRF-Var.
Here's an excerpt from an earlier message:
>>>>>> For compiling MET, be sure to use the version that's distributed by
>>>>>> NCEP: http://www.nco.ncep.noaa.gov/sib/decoders/BUFRLIB
>>>>>>
>>>>>> The following 3 commands should work to compile this version of BUFRLIB
>>>>>> with gcc/gfortran:
>>>>>> gcc -c -DUNDERSCORE *.c
>>>>>> gfortran -c -DUNDERSCORE -fno-second-underscore *.f *.F
>>>>>> ar crv libbufr.a *.o
>>>>>>
>>>>>> These were taken from the METv2.0 Online Tutorial:
>>>>>> http://www.dtcenter.org/met/users/support/online_tutorial/METv2.0/compilation/req_libs.php
>>>>>>
>>>>>> Please try rebuilding BUFRLIB (ignore the warning messages) and recompiling MET to see if that fixes
>>>>>> the problem.
Once you're sure you're using the right version of BUFRLIB, are you still having any compilation problems with MET?
Thanks,
John
Theo Carter wrote:
>
> Hi John,
>
> Did get a touch further than yesterday - can now find the BUFRLIB libraries, but am still getting crashes within. On your website you say someone has built this using RHEL, can you ask if I can copy their library and try that maybe?
>
> I have built the BUFR library as you suggested commands-wise, and it still comes with the following:
>
>
>
> *** Finished Making grid_stat application ***
>
> *** Making pb2nc application ***
>
> /usr/bin/g++ -c pb2nc_Conf.cc -Wall -Wshadow -static \
> -I../../lib
> /usr/bin/gfortran -c numpbmsg.f -Wall -Wshadow -static -ff2c
> /usr/bin/gfortran -c openpb.f -Wall -Wshadow -static -ff2c
> /usr/bin/gfortran -c readpb.f -Wall -Wshadow -static -ff2c
> /usr/bin/gfortran -c dumppb.f -Wall -Wshadow -static -ff2c
>
>
> /usr/bin/g++ -o pb2nc pb2nc.cc pb2nc_Conf.o numpbmsg.o openpb.o readpb.o dumppb.o \
> -Wall -Wshadow -static -DMET_BASE=\"/wrf/METv2.0\" \
> -I../../lib -I/usr/local/include -I/usr/local/include/gsl -I/wrf/libraries/BUFRLIB \
> -L../../lib -L/usr/local/lib -L/usr/local/lib/gsl -L/wrf/libraries/BUFRLIB -L/usr/lib/gcc/i386-redhat-linux/3.4.6 \
> -lbufr -lvx_pb_util \
> -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 \
> -lg2c -lgfortran
> /wrf/libraries/BUFRLIB/libbufr.a(datelen.o): In function `datelen_':
> datelen.f:(.text+0x51): undefined reference to `for_write_int_fmt'
> /wrf/libraries/BUFRLIB/libbufr.a(openbf.o): In function `openbf_':
> openbf.f:(.text+0x4f): undefined reference to `for_cpstr'
> openbf.f:(.text+0x91): undefined reference to `for_cpstr'
> openbf.f:(.text+0x11b): undefined reference to `for_write_int_fmt'
> openbf.f:(.text+0x13e): undefined reference to `for_write_int_fmt_xmit'
> openbf.f:(.text+0x19f): undefined reference to `for_write_int_fmt'
> etc..............................
>
>
>
>
> Cheers and thanks for the help,
> Theo
>
>
>
>
>> Date: Fri, 8 May 2009 06:52:24 -0600
>> From: johnhg at rap.ucar.edu
>> To: thibidottwo at hotmail.com; met_help at ucar.edu
>> Subject: Re: [Met_help] fm theo carter dubai re: failure during make
>>
>> Theo,
>>
>> If you look closely, those are just warning messages from BUFRLIB. I get them too when compiling with "gfortran", but they won't cause you any problems. Warnings are generally OK - it's the errors
>> you should worry about.
>>
>> You're right that the compiler is complaining that it can't find the file "gsl_cdf.h". Here's what I'd suggest doing:
>>
>> cd /wrf/libraries/gsl-1.9
>> make clean
>> ./configure --prefix=`pwd`
>> make
>> make install
>>
>> Next, in the top-level MET Makefile, make sure that the following is set:
>> GSL_BASE = /wrf/libraries/gsl-1.9
>> GSL_INCS = -I$(GSL_BASE)/include
>> GSL_LIBS = -L$(GSL_BASE)/lib
>>
>> And then try rebuilding MET.
>>
>> Hope that helps.
>>
>> John
>>
>> Theo Carter wrote:
>>>
>>>
>>>
>>>
>>>
>>> Hi John,
>>>
>>> I did put in the file you sent into BUFRLIB, however, I still got the following errors:
>>>
>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>> [root at localhost BUFRLIB]# gcc -c -DUNDERSCORE *.c
>>> [root at localhost BUFRLIB]# gfortran -c -DUNDERSCORE -fno-second-underscore *.f *.F
>>> In file nemock.f:77
>>>
>>> IF(NEMO(I:I).EQ.CHRSET(J:J)) GOTO 10
>>> 1
>>> In file nemock.f:81
>>>
>>>
>>> 2
>>> Warning: Obsolete: GOTO at (1) jumps to END of construct at (2)
>>> In file stndrd.f:202
>>>
>>> GOTO 10
>>> 1
>>> In file stndrd.f:207
>>>
>>>
>>> 2
>>> Warning: Obsolete: GOTO at (1) jumps to END of construct at (2)
>>> [root at localhost BUFRLIB]#
>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>>
>>> I did carry on and install the rest of the libraries etc, and then ran make on mettools version 2 and got to the following point where it is looking for something in the gsl libraries - but the location is strange?
>>>
>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>>
>>> *** Making vx_contable Library ***
>>>
>>> /usr/bin/g++ vx_contable.cc -Wall -Wshadow -static -c -I..
>>> /usr/bin/g++ vx_contable_stats.cc -Wall -Wshadow -static -c -I.. -I/wrf/libraries/gsl-1.9/include -I/usr/local/include
>>> In file included from ../vx_gsl_prob/vx_gsl_prob.h:17,
>>> from ../vx_met_util/compute_ci.h:16,
>>> from ../vx_met_util/vx_met_util.h:17,
>>> from vx_contable_stats.cc:21:
>>> ../vx_gsl_prob/gsl_cdf.h:17:25: error: gsl/gsl_cdf.h: No such file or directory
>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>>
>>> I did a 'locate' and found the library here??
>>>
>>> [wrf at localhost gsl-1.9]$ locate gsl_cdf.h
>>> /wrf/METv2.0/lib/vx_gsl_prob/gsl_cdf.h
>>> /wrf/libraries/gsl-1.9/cdf/gsl_cdf.h
>>> [wrf at localhost gsl-1.9]$
>>>
>>> How do I get past this problem?
>>>
>>> Cheers and thanks for the help so far,
>>> Theo
>>>
>>>
>>>> Date: Wed, 6 May 2009 15:24:18 -0600
>>>> Subject: RE: [Met_help] fm theo carter dubai re: failure during make
>>>> From: johnhg at rap.ucar.edu
>>>> To: thibidottwo at hotmail.com
>>>> CC: met_help at ucar.edu
>>>>
>>>> Theo,
>>>>
>>>> Good news. When I compile the current version of BUFRLIB using
>>>> gcc/gfortran, I see the exact same warning and error messages. In fact,
>>>> when I use gfortran on the latest version of Debian Linux (Lenny), I see
>>>> even more warning messages.
>>>>
>>>> I've also been in touch with BUFRLIB support about this, and they're aware
>>>> of the issue with compiling BUFRLIB with the GNU compilers. There is a
>>>> very simple fix to get that file "nvnwin.f" to compile without error.
>>>> However, I don't believe that you need it to get MET working.
>>>>
>>>> Try compiling BUFRLIB using the following 3 commands:
>>>> gcc -c -DUNDERSCORE *.c
>>>> gfortran -c -DUNDERSCORE -fno-second-underscore *.f *.F
>>>> ar crv libbufr.a *.o
>>>>
>>>> Ignore the warnings and error, and then try building MET. I believe it
>>>> should work fine.
>>>>
>>>> If you'd like to get rid of that BUFRLIB error message, you're welcome to
>>>> replace your version of the file "BUFRLIB/nvnwin.f" with the version I've
>>>> attached. It includes the simple fix which should get rid of that error
>>>> message from gfortran.
>>>>
>>>> Thanks and good luck,
>>>> John
>>>>
>>>>> Hi John,
>>>>>
>>>>> I have tried to install BUFRLIB on fedora 10 and centos 5.3 now, and in
>>>>> both cases I get the same following problem, have you come across this
>>>>> before. It is disheartening to fail at the first hurdle like this. My
>>>>> system is standard desktop (two different ones, here at home and at work).
>>>>>
>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>>>> [root at localhost BUFRLIB]# whereis gcc
>>>>> gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc
>>>>> /usr/share/man/man1/gcc.1.gz
>>>>> [root at localhost BUFRLIB]# whereis gfortran
>>>>> gfortran: /usr/bin/gfortran /usr/share/man/man1/gfortran.1.gz
>>>>> [root at localhost BUFRLIB]# gcc -c -DUNDERSCORE *.c
>>>>> [root at localhost BUFRLIB]# gfortran -c -DUNDERSCORE -fno-second-underscore
>>>>> *.f *.
>>>>> F
>>>>> In file nemock.f:77
>>>>>
>>>>> IF(NEMO(I:I).EQ.CHRSET(J:J)) GOTO 10
>>>>> 1
>>>>> In file nemock.f:81
>>>>>
>>>>>
>>>>> 2
>>>>> Warning: Obsolete: GOTO at (1) jumps to END of construct at (2)
>>>>> In file nvnwin.f:84
>>>>>
>>>>> INVN(I) = BMISS
>>>>> 1
>>>>> Error: Arithmetic overflow converting REAL(8) to INTEGER(4) at (1)
>>>>> In file stndrd.f:202
>>>>>
>>>>> GOTO 10
>>>>> 1
>>>>> In file stndrd.f:207
>>>>>
>>>>>
>>>>> 2
>>>>> Warning: Obsolete: GOTO at (1) jumps to END of construct at (2)
>>>>> [root at localhost BUFRLIB]#
>>>>>
>>>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>>>>>
>>>>> Any help you can give will be great - I sent off a query to the bufrlib
>>>>> helpdesk on their website, but have had no reply.
>>>>> Thanks,
>>>>> Theo Carter, Forecaster, Dubai Met Office.
>>>>>
>>>>>> Date: Wed, 29 Apr 2009 06:38:24 -0600
>>>>>> From: johnhg at rap.ucar.edu
>>>>>> To: thibidottwo at hotmail.com
>>>>>> CC: met_help at ucar.edu
>>>>>> Subject: Re: [Met_help] fm theo carter dubai re: failure during make
>>>>>>
>>>>>> Theo,
>>>>>>
>>>>>> Based on that error message, I'd guess that there's an issue with your
>>>>>> version of BUFRLIB.
>>>>>>
>>>>>> Where did you obtain the version of BUFRLIB you're using? Is by any
>>>>>> chance part of WRF-Var? If so, that version may or may not work.
>>>>>>
>>>>>> For compiling MET, be sure to use the version that's distributed by
>>>>>> NCEP: http://www.nco.ncep.noaa.gov/sib/decoders/BUFRLIB
>>>>>>
>>>>>> The following 3 commands should work to compile this version of BUFRLIB
>>>>>> with gcc/gfortran:
>>>>>> gcc -c -DUNDERSCORE *.c
>>>>>> gfortran -c -DUNDERSCORE -fno-second-underscore *.f *.F
>>>>>> ar crv libbufr.a *.o
>>>>>>
>>>>>> These were taken from the METv2.0 Online Tutorial:
>>>>>> http://www.dtcenter.org/met/users/support/online_tutorial/METv2.0/compilation/req_libs.php
>>>>>>
>>>>>> Please try rebuilding BUFRLIB and recompiling MET to see if that fixes
>>>>>> the problem.
>>>>>>
>>>>>> Thanks,
>>>>>> John Halley Gotway
>>>>>> johnhg at ucar.edu
>>>>>>
>>>>>>
>>>>>> Theo Carter wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I wonder if you can help or if you have come across this problem
>>>>>> before? While running make on a very generic basic Pentium 4 32-bit
>>>>>> using gfortran, gcc and g++ compilers within a CentOS 5.3 OS (RHEL 5
>>>>>> clone) the build fails with the following output.
>>>>>>> /wrf/extralibraries/libbufr.a(ufbevn.o): In function `ufbevn_':
>>>>>>> ufbevn.f:(.text+0xa6e): undefined reference to `nvnwin_'
>>>>>>> collect2: ld returned 1 exit status
>>>>>>> make[3]: *** [pb2nc] Error 1
>>>>>>> make[2]: *** [all] Error 2
>>>>>>> make[1]: *** [targets] Error 2
>>>>>>> make: *** [all] Error 2
>>>>>>>
>>>>>>>
>>>>>>> BUFRLIB was built on the same machine.
>>>>>>>
>>>>>>> I then end up with only gen_poly_mask, grid_stat, mode and pcp_combine
>>>>>> executables in my /bin.
>>>>>>> Any help would be appreciated,
>>>>>>> Thanks,
>>>>>>> Theo Carter
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Met_help mailing list
>>>>>>> Met_help at mailman.ucar.edu
>>>>>>> http://mailman.ucar.edu/mailman/listinfo/met_help
>
More information about the Met_help
mailing list