problem about the plotting package installation
problem about the plotting package installation
Dear users,
I saw from wikiroms that we can use the plotting package for visualizing ROMS model output. But when I install the package as the wikiroms, I get such problems:
leon@leon-desktop:/media/disk/linux/romstools/plot/src$ make
/usr/bin/cpp -P -traditional -DLINUX -I/opt/g95soft/s_netcdf4/include -DLINUX -DI686 -DG95 -DNCARG441 -Drmdocinc -IInclude -IUtility Drivers/cnt.F > cnt.f90
Bin/cpp_clean cnt.f90
: this file is not exsit.
make: *** [cnt.f90] wrong 127
But I can find the cnt.f90 in the src.
I don't know why.
And are there any other softwares for visualizing ROMS model output?
I need your help!
I saw from wikiroms that we can use the plotting package for visualizing ROMS model output. But when I install the package as the wikiroms, I get such problems:
leon@leon-desktop:/media/disk/linux/romstools/plot/src$ make
/usr/bin/cpp -P -traditional -DLINUX -I/opt/g95soft/s_netcdf4/include -DLINUX -DI686 -DG95 -DNCARG441 -Drmdocinc -IInclude -IUtility Drivers/cnt.F > cnt.f90
Bin/cpp_clean cnt.f90
: this file is not exsit.
make: *** [cnt.f90] wrong 127
But I can find the cnt.f90 in the src.
I don't know why.
And are there any other softwares for visualizing ROMS model output?
I need your help!
Re: problem about the plotting package installation
What doesn't exist is either Bin/cpp_clean or the perl that cpp_clean depends on. I assume you have cpp_clean. Is perl installed on that computer and is cpp_clean looking for it in the right place?
Re: problem about the plotting package installation
thx,kate.I download the package again, then there is no problem. I think it must be something wrong in my previous packge. Anyway, thank you very much.
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
I have problem with plotting package compilation too. But with this error:
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/local/lib/libncarg_gks.a(gziqwk.o): In function `gziqwk_':
gziqwk.f:(.text+0x13f): undefined reference to `ggkwdr_'
/usr/local/lib/libncarg_gks.a(gztowk.o): In function `gztowk_':
gztowk.f:(.text+0x225): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x5a8): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x8c9): undefined reference to `ggkwdr_'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
I know, what I've not some library. Google wrote, what this problem arise with ncl_ncarg compilation, but I haven't this error, then ncl_ncarg install.
Please, help me!)))
P.S. I'm sorry for my english))))
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/local/lib/libncarg_gks.a(gziqwk.o): In function `gziqwk_':
gziqwk.f:(.text+0x13f): undefined reference to `ggkwdr_'
/usr/local/lib/libncarg_gks.a(gztowk.o): In function `gztowk_':
gztowk.f:(.text+0x225): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x5a8): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x8c9): undefined reference to `ggkwdr_'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
I know, what I've not some library. Google wrote, what this problem arise with ncl_ncarg compilation, but I haven't this error, then ncl_ncarg install.
Please, help me!)))
P.S. I'm sorry for my english))))
Re: problem about the plotting package installation
What version of NCARG do you have? I have NCL-5.0.0 which contains NCARG.
If I go to its library directory, I can do:
The only match I got was:
This says that libncarg_gks.a both uses that routine (U) and has
that routine (T).
If I go to its library directory, I can do:
Code: Select all
cygnus.arsc.edu 415% foreach foo (lib*)
foreach? nm $foo | grep ggkwdr
foreach? echo $foo done
foreach? end
Code: Select all
U ggkwdr_
U ggkwdr_
0000000000000053 T ggkwdr_
libncarg_gks.a done
that routine (T).
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
1) Yes, I have similar version NCL)) NCL-5.0.0 or ncl_ncarg-5.0.0))
2) Ok, Why I haven't routine (T)? My mistake, what NCL has been collected with wrong parameters? Your command has given me the following answer:
...
libncarg.a done
libncarg_c.a done
U ggkwdr_
U ggkwdr_
libncarg_gks.a done
...
PS Thanks for your participation in my problem)))))
2) Ok, Why I haven't routine (T)? My mistake, what NCL has been collected with wrong parameters? Your command has given me the following answer:
...
libncarg.a done
libncarg_c.a done
U ggkwdr_
U ggkwdr_
libncarg_gks.a done
...
PS Thanks for your participation in my problem)))))
Re: problem about the plotting package installation
Get the brand new NCL-5.1 and try again?
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
I have download new version of NCL and build it. But error have saved:
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
/usr/local/lib/libncarg_gks.a(gziqwk.o): In function `gziqwk_':
gziqwk.f:(.text+0x13f): undefined reference to `ggkwdr_'
/usr/local/lib/libncarg_gks.a(gztowk.o): In function `gztowk_':
gztowk.f:(.text+0x225): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x5a8): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x8c9): undefined reference to `ggkwdr_'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
Can You ask me, with what parameters You make the NCL-library? May be problem in this)))
PS Your command give me that answer:
libncarg.a done
libncarg_c.a done
U ggkwdr_
U ggkwdr_
libncarg_gks.a done
libnetcdf.a done
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
/usr/local/lib/libncarg_gks.a(gziqwk.o): In function `gziqwk_':
gziqwk.f:(.text+0x13f): undefined reference to `ggkwdr_'
/usr/local/lib/libncarg_gks.a(gztowk.o): In function `gztowk_':
gztowk.f:(.text+0x225): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x5a8): undefined reference to `ggkwdr_'
gztowk.f:(.text+0x8c9): undefined reference to `ggkwdr_'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
Can You ask me, with what parameters You make the NCL-library? May be problem in this)))
PS Your command give me that answer:
libncarg.a done
libncarg_c.a done
U ggkwdr_
U ggkwdr_
libncarg_gks.a done
libnetcdf.a done
Re: problem about the plotting package installation
You built it yourself? I have built NCARG many times (but not recently) and should warn you that the make continues after an error. You have to go back and check the make.out file for errors or try the 'make Everything' again and keep an eye out for errors. You are missing that function, so it probably failed to compile somehow. Can you download the binaries and use them?
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
I had download binaries and copy them into appropriate directories. But error with ld saved:
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
/usr/local/lib/libncarg_gks.a(pixwrite_png.o): In function `write_png':
pixwrite_png.c:(.text+0x64): undefined reference to `png_create_write_struct'
pixwrite_png.c:(.text+0x8d): undefined reference to `png_create_info_struct'
pixwrite_png.c:(.text+0xa7): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0xe2): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0x119): undefined reference to `png_init_io'
pixwrite_png.c:(.text+0x12e): undefined reference to `png_malloc'
pixwrite_png.c:(.text+0x16d): undefined reference to `png_set_rows'
pixwrite_png.c:(.text+0x1b4): undefined reference to `png_set_IHDR'
pixwrite_png.c:(.text+0x1dd): undefined reference to `png_write_png'
pixwrite_png.c:(.text+0x1ef): undefined reference to `png_destroy_write_struct'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
I think that these and previous errors arise that applications necessary ncl are not installed, like JPEG, PNG, GRIB2 and others)))
/usr/bin/g95 -O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o /usr/local/bin/cnt \
libUTIL.a -L/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/opt/g95soft/s_netcdf4/lib -lnetcdf -L/opt/g95soft/s_hdf5/lib -lhdf5_hl -lhdf5 -lz
/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../../i486-slackware-linux/bin/ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
/usr/local/lib/libncarg_gks.a(pixwrite_png.o): In function `write_png':
pixwrite_png.c:(.text+0x64): undefined reference to `png_create_write_struct'
pixwrite_png.c:(.text+0x8d): undefined reference to `png_create_info_struct'
pixwrite_png.c:(.text+0xa7): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0xe2): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0x119): undefined reference to `png_init_io'
pixwrite_png.c:(.text+0x12e): undefined reference to `png_malloc'
pixwrite_png.c:(.text+0x16d): undefined reference to `png_set_rows'
pixwrite_png.c:(.text+0x1b4): undefined reference to `png_set_IHDR'
pixwrite_png.c:(.text+0x1dd): undefined reference to `png_write_png'
pixwrite_png.c:(.text+0x1ef): undefined reference to `png_destroy_write_struct'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [/usr/local/bin/cnt] Ошибка 1
I think that these and previous errors arise that applications necessary ncl are not installed, like JPEG, PNG, GRIB2 and others)))
Re: problem about the plotting package installation
Do you have libpng? Might be worth installing if you don't.
Those gfortran functions are in libgfortran. Can you try linking to that? It comes with gfortran, which was likely used by the NCAR people when they compiled it. Honestly, if you download binaries which were compiled with gfortran, you will have an easier time of it if you use gfortran too.
I don't know about the grib stuff, but I know you can compile NCARG without having hdf if you tell it during configuration that you don't have hdf.
Those gfortran functions are in libgfortran. Can you try linking to that? It comes with gfortran, which was likely used by the NCAR people when they compiled it. Honestly, if you download binaries which were compiled with gfortran, you will have an easier time of it if you use gfortran too.
I don't know about the grib stuff, but I know you can compile NCARG without having hdf if you tell it during configuration that you don't have hdf.
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
Hello, I'm sorry for my delay)))) On eighth of March it was a little tightened. By the way, with the past you a holiday)))
I install libpng, but error had save and I use gfortran(((( I don't know, may be I something wrong do(((( But problem it was added(((
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
/usr/local/lib/libncarg_gks.a(pixwrite_png.o): In function `write_png':
pixwrite_png.c:(.text+0x64): undefined reference to `png_create_write_struct'
pixwrite_png.c:(.text+0x8d): undefined reference to `png_create_info_struct'
pixwrite_png.c:(.text+0xa7): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0xe2): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0x119): undefined reference to `png_init_io'
pixwrite_png.c:(.text+0x12e): undefined reference to `png_malloc'
pixwrite_png.c:(.text+0x16d): undefined reference to `png_set_rows'
pixwrite_png.c:(.text+0x1b4): undefined reference to `png_set_IHDR'
pixwrite_png.c:(.text+0x1dd): undefined reference to `png_write_png'
pixwrite_png.c:(.text+0x1ef): undefined reference to `png_destroy_write_struct'
/usr/local/lib/libnetcdf.a(nc4attr.o): In function `nc_rename_att':
nc4attr.c:(.text+0x17bb): undefined reference to `H5Dclose'
nc4attr.c:(.text+0x181b): undefined reference to `H5Dclose'
/usr/local/lib/libnetcdf.a(nc4attr.o): In function `nc_del_att':
nc4attr.c:(.text+0x1a62): undefined reference to `H5Adelete'
nc4attr.c:(.text+0x1acb): undefined reference to `H5Dclose'
........ and many-mane undefined reference error with H5-prefix((((
Why this error arise, all packages installed: and hdf5 and netcdf and libpng(((
I install libpng, but error had save and I use gfortran(((( I don't know, may be I something wrong do(((( But problem it was added(((
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
/usr/local/lib/libncarg_gks.a(pixwrite_png.o): In function `write_png':
pixwrite_png.c:(.text+0x64): undefined reference to `png_create_write_struct'
pixwrite_png.c:(.text+0x8d): undefined reference to `png_create_info_struct'
pixwrite_png.c:(.text+0xa7): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0xe2): undefined reference to `png_destroy_write_struct'
pixwrite_png.c:(.text+0x119): undefined reference to `png_init_io'
pixwrite_png.c:(.text+0x12e): undefined reference to `png_malloc'
pixwrite_png.c:(.text+0x16d): undefined reference to `png_set_rows'
pixwrite_png.c:(.text+0x1b4): undefined reference to `png_set_IHDR'
pixwrite_png.c:(.text+0x1dd): undefined reference to `png_write_png'
pixwrite_png.c:(.text+0x1ef): undefined reference to `png_destroy_write_struct'
/usr/local/lib/libnetcdf.a(nc4attr.o): In function `nc_rename_att':
nc4attr.c:(.text+0x17bb): undefined reference to `H5Dclose'
nc4attr.c:(.text+0x181b): undefined reference to `H5Dclose'
/usr/local/lib/libnetcdf.a(nc4attr.o): In function `nc_del_att':
nc4attr.c:(.text+0x1a62): undefined reference to `H5Adelete'
nc4attr.c:(.text+0x1acb): undefined reference to `H5Dclose'
........ and many-mane undefined reference error with H5-prefix((((
Why this error arise, all packages installed: and hdf5 and netcdf and libpng(((
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
Ok, the error with H5 - prefix I fixed, but others...
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
I suspect that an error in it:
http://www.nabble.com/-Bug-fortran-3364 ... 25571.html
http://www.nabble.com/-Bug-fortran-3364 ... 25571.html
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
1) Error with:
undefined reference to `_gfortran_copy_string'
...
arise, because gfortran-4.2 and newer don't contain this functions and others, but gfortran-4.1 contain it.
2) Error with:
undefined reference to `png_create_write_struct'
...
Because I install lippng in directory /usr/lib I had solve so:
I add next section into Compilers/Linux-gfortran.mk))))
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
After this section:
#
# Library locations, can be overridden by environment variables.
#
And all ok)))
undefined reference to `_gfortran_copy_string'
...
arise, because gfortran-4.2 and newer don't contain this functions and others, but gfortran-4.1 contain it.
2) Error with:
undefined reference to `png_create_write_struct'
...
Because I install lippng in directory /usr/lib I had solve so:
I add next section into Compilers/Linux-gfortran.mk))))
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
After this section:
#
# Library locations, can be overridden by environment variables.
#
And all ok)))
-
- Posts: 12
- Joined: Wed Dec 10, 2008 10:15 pm
- Location: The University of Western Australia
Re: problem about the plotting package installation
Hi, Fancer,
I have been struggling with the same problem as you met for afew days.
i am quite a beginner about this. so can you give me some advice?
1)About the 'undetified reference to "_gfortran_copy_string " '
how do you solve the problem of the gfortran version (my version is 4.2.3). need i add a symbol versioning support? (i am not sure). if yes, how?
2)About the "undefined reference to `png_create_write_struct'"
you said you added some sentences as below into the compiler/Linux-gfrotran.mk file:
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
but there is no such Linux-gfrotran.mk file in the compiler folder (maybe in my case, Linux-g95.mk). did you create it by yourself. AND how did you set the macro in makefile. I set as:
PLT_DEBUG ?=
PLT_LARGE ?=
USE_NETCDF4 ?= on
FORT ?=g95
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= $(HOME)/bin
3) Additionally, when i test the NCAR Graphics, i type
ncargex cpex08
then error 'undetified reference to "_gfortran_copy_string " arises. I think they are the same reason.
I am looking forward to your reply.
Thanks !
Zhipeng
I have been struggling with the same problem as you met for afew days.
i am quite a beginner about this. so can you give me some advice?
1)About the 'undetified reference to "_gfortran_copy_string " '
how do you solve the problem of the gfortran version (my version is 4.2.3). need i add a symbol versioning support? (i am not sure). if yes, how?
2)About the "undefined reference to `png_create_write_struct'"
you said you added some sentences as below into the compiler/Linux-gfrotran.mk file:
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
but there is no such Linux-gfrotran.mk file in the compiler folder (maybe in my case, Linux-g95.mk). did you create it by yourself. AND how did you set the macro in makefile. I set as:
PLT_DEBUG ?=
PLT_LARGE ?=
USE_NETCDF4 ?= on
FORT ?=g95
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= $(HOME)/bin
3) Additionally, when i test the NCAR Graphics, i type
ncargex cpex08
then error 'undetified reference to "_gfortran_copy_string " arises. I think they are the same reason.
I am looking forward to your reply.
Thanks !
Zhipeng
Re: problem about the plotting package installation
It looks like NCARG was compiled with gfortran. Do you have gfortran? Maybe you should get it, since you will need to link to -lgfortran.
Re: problem about the plotting package installation
Hello everyone,
I have the same problem as zangzhipeng.
Downloading the plotting package it seems that the Linux-gfortran.mk is missing.
As I compiled ROMS, NETCDF4 and NCL in gfortran, I wonder how to compile the plotting package.
So I am asking the same question: did you create the Linux-gfortran.mk by yourself ???
Thank you
I have the same problem as zangzhipeng.
Downloading the plotting package it seems that the Linux-gfortran.mk is missing.
As I compiled ROMS, NETCDF4 and NCL in gfortran, I wonder how to compile the plotting package.
So I am asking the same question: did you create the Linux-gfortran.mk by yourself ???
Thank you
-
- Posts: 12
- Joined: Wed Dec 10, 2008 10:15 pm
- Location: The University of Western Australia
Re: problem about the plotting package installation
Hi, Kate, thanks for your reply.
1) Now i have a new preblem when i test the NCAR Graphics, first i type
ncargex cpex08
zang@zang: ncargex cpex08
NCAR Graphics Fortran
Example <cpex08>
Copying cpex08.f
Copying cpexcc.f
Compiling and linking...
gfortran -fPIC -fno-second-underscore -fno-range-check -O -o cpex08 cpexcc.f cpex08.f -L/usr/local/lib -L/usr/X11R6/lib -lncarg -lncarg_gks -lncarg_c -
lX11 -lXext -lpng -lz
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
collect2: ld returned 1 exit status
The compile and link failed.
then i linked the 'libgfortran' when compiling
zang@zang:~$ gfortran -fPIC -fno-second-underscore -fno-range-check -O -o cpex08 cpexcc.f cpex08.f -L/usr/local/lib -L/usr/X11R6/lib -lncarg -
lncarg_gks -lncarg_c -lX11 -lXext -lpng -lz -L/usr/lib/gcc/i486-linux-gnu/4.1 -lgfortran
/usr/lib/gcc/i486-linux-gnu/4.2.4/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
Did I compile correctly? what's the cause of the undefined reference 'main'? need i define the main function? and how (or in which file?)
2) Another problem, when i compiled the plotting package, i have linked the libraries of 'libgfortran' and 'libpng', other problems have been sloved. now only one undefined refrence 'nf_something' occurs, I am not sure which library i missed or where i made the mistake.
zang@zang:~/Mydir/src$ make
/usr/bin/g95
-O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o
/home/zang/bin/cnt \
libUTIL.a -L/usr/local/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/usr/lib/gcc/i486-linux-gnu/4.1 -lgfortran -L/usr/lib -lpng -L/usr/local/lib -lnetcdf -L/usrlocal/lib -lhdf5_hl -lhdf5 -lz
ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
libUTIL.a(crash.o): In function `crash_':
crash.f90:(.text+0x19): undefined reference to `nf_close__'
crash.f90:(.text+0x41): undefined reference to `nf_close__'
crash.f90:(.text+0x167): undefined reference to `nf_strerror__'
libUTIL.a(crash.o):(.data+0x1c): undefined reference to `nf__create__'
libUTIL.a(crash.o):(.data+0x24): undefined reference to `nf__enddef__'
libUTIL.a(crash.o):(.data+0x28): undefined reference to `nf__create_mp__'
libUTIL.a(crash.o):(.data+0x2c): undefined reference to `nf_abort__'
...............
make: *** [/home/zang/bin/cnt] Error 1
Did i miss the 'libnetcdf' ? or is it in the wrong path?
please give me a hand, thanks
Zhipeng
1) Now i have a new preblem when i test the NCAR Graphics, first i type
ncargex cpex08
zang@zang: ncargex cpex08
NCAR Graphics Fortran
Example <cpex08>
Copying cpex08.f
Copying cpexcc.f
Compiling and linking...
gfortran -fPIC -fno-second-underscore -fno-range-check -O -o cpex08 cpexcc.f cpex08.f -L/usr/local/lib -L/usr/X11R6/lib -lncarg -lncarg_gks -lncarg_c -
lX11 -lXext -lpng -lz
/usr/local/lib/libncarg.a(cpcldm.o): In function `cpcldm_':
cpcldm.f:(.text+0x8ab): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xf36): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0xfc8): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x10bd): undefined reference to `_gfortran_copy_string'
cpcldm.f:(.text+0x11c4): undefined reference to `_gfortran_copy_string'
/usr/local/lib/libncarg.a(cpcldm.o):cpcldm.f:(.text+0x127f): more undefined references to `_gfortran_copy_string' follow
collect2: ld returned 1 exit status
The compile and link failed.
then i linked the 'libgfortran' when compiling
zang@zang:~$ gfortran -fPIC -fno-second-underscore -fno-range-check -O -o cpex08 cpexcc.f cpex08.f -L/usr/local/lib -L/usr/X11R6/lib -lncarg -
lncarg_gks -lncarg_c -lX11 -lXext -lpng -lz -L/usr/lib/gcc/i486-linux-gnu/4.1 -lgfortran
/usr/lib/gcc/i486-linux-gnu/4.2.4/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
Did I compile correctly? what's the cause of the undefined reference 'main'? need i define the main function? and how (or in which file?)
2) Another problem, when i compiled the plotting package, i have linked the libraries of 'libgfortran' and 'libpng', other problems have been sloved. now only one undefined refrence 'nf_something' occurs, I am not sure which library i missed or where i made the mistake.
zang@zang:~/Mydir/src$ make
/usr/bin/g95
-O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o
/home/zang/bin/cnt \
libUTIL.a -L/usr/local/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/usr/lib/gcc/i486-linux-gnu/4.1 -lgfortran -L/usr/lib -lpng -L/usr/local/lib -lnetcdf -L/usrlocal/lib -lhdf5_hl -lhdf5 -lz
ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
libUTIL.a(crash.o): In function `crash_':
crash.f90:(.text+0x19): undefined reference to `nf_close__'
crash.f90:(.text+0x41): undefined reference to `nf_close__'
crash.f90:(.text+0x167): undefined reference to `nf_strerror__'
libUTIL.a(crash.o):(.data+0x1c): undefined reference to `nf__create__'
libUTIL.a(crash.o):(.data+0x24): undefined reference to `nf__enddef__'
libUTIL.a(crash.o):(.data+0x28): undefined reference to `nf__create_mp__'
libUTIL.a(crash.o):(.data+0x2c): undefined reference to `nf_abort__'
...............
make: *** [/home/zang/bin/cnt] Error 1
Did i miss the 'libnetcdf' ? or is it in the wrong path?
please give me a hand, thanks
Zhipeng
Re: problem about the plotting package installation
Your problem with main is likely to be an underscores issue. I don't know.
You can add -lgfortran to libextra in the ncargf77 script (which is invoked by ncargex).
This is getting to be a FAQ:Linking
You can add -lgfortran to libextra in the ncargf77 script (which is invoked by ncargex).
This is getting to be a FAQ:Linking
-
- Posts: 45
- Joined: Fri Feb 06, 2009 5:20 pm
- Location: NNSTU, The Nizhniy Novgorod State Technical University named after R.E.Alekseev, Russia
Re: problem about the plotting package installation
I'm sorry for delay with answer)))
2 zangzhipeng:
1) The medicine for "_gfortran_copy_string" and other error is gcc-4.1 and earlier with his gfortran, where have this functions (I mean _gfortran_copy_string and others...). Because _gfortran_* functions not include in new compilers))))
2) Linux-gfortran.mk: Yes)))) I created this file by myself))) What I do:
----copy Compilers/Linux-g95.mk to Compilers/Linux-gfortran.mk
----change:
-------FC := gfortran
-------NCARG_ROOT ?= /where/NCARG/installed
-------Change next section:
#
# Library locations, can be overridden by environment variables.
#
…
LIBS += -L/usr/X11R6/lib -lX11
...
where /usr/X11R6/lib - directory where graphic librares.
--------NETCDF_INCDIR, NETCDF_LIBDIR, HDF5_LIBDIR - directory where NetCDF and HDF was install.
--------Add next section:
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
But befor all this manipulations was vary long dance with tambourine for install ncarg, svn and other))) I can give manual in russian about installation all this on Slackware 12.2 and Ubuntu 7.10))) If You want)))
About Your questions:
2)
PLT_DEBUG ?=
PLT_LARGE ?=
USE_NETCDF4 ?= on
FORT ?=g95
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= $(HOME)/bin
---- All this options set-up in makefile (not in Linux-gfortran.mk). In my linux g95 is symbolic link for gfortran and I decide to create Linux-gfortran.mk with add some new options. My section of makefile:
USE_DEBUG ?=
USE_LARGE ?=
USE_NETCDF4 ?= on
FORT ?= gfortran
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= ./ready_bin
3) This error because your binary file wasn't completely maked)))
2 all:
You don't need NCL for compile ROMS-plotting package. You need NCARG without NCL.
NEXT:
You forget "/" between usr and local)))
PS Sorry for my english)))
2 zangzhipeng:
1) The medicine for "_gfortran_copy_string" and other error is gcc-4.1 and earlier with his gfortran, where have this functions (I mean _gfortran_copy_string and others...). Because _gfortran_* functions not include in new compilers))))
2) Linux-gfortran.mk: Yes)))) I created this file by myself))) What I do:
----copy Compilers/Linux-g95.mk to Compilers/Linux-gfortran.mk
----change:
-------FC := gfortran
-------NCARG_ROOT ?= /where/NCARG/installed
-------Change next section:
#
# Library locations, can be overridden by environment variables.
#
…
LIBS += -L/usr/X11R6/lib -lX11
...
where /usr/X11R6/lib - directory where graphic librares.
--------NETCDF_INCDIR, NETCDF_LIBDIR, HDF5_LIBDIR - directory where NetCDF and HDF was install.
--------Add next section:
#
# PNG-lib
#
LIBS += -L/usr/lib -lpng
But befor all this manipulations was vary long dance with tambourine for install ncarg, svn and other))) I can give manual in russian about installation all this on Slackware 12.2 and Ubuntu 7.10))) If You want)))
About Your questions:
2)
PLT_DEBUG ?=
PLT_LARGE ?=
USE_NETCDF4 ?= on
FORT ?=g95
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= $(HOME)/bin
---- All this options set-up in makefile (not in Linux-gfortran.mk). In my linux g95 is symbolic link for gfortran and I decide to create Linux-gfortran.mk with add some new options. My section of makefile:
USE_DEBUG ?=
USE_LARGE ?=
USE_NETCDF4 ?= on
FORT ?= gfortran
NCAR_VERSION ?=NCARG441
PLT_BINDER ?= ./ready_bin
3) This error because your binary file wasn't completely maked)))
2 all:
You don't need NCL for compile ROMS-plotting package. You need NCARG without NCL.
NEXT:
This error may be because You somewhere in Linux-g95.mk and others wrote: LIBS:=-L/usrlocal/lib ...zang@zang:~/Mydir/src$ make
/usr/bin/g95
-O3 -ffast-math \
cnt.o cpmpxy2d.o mapeod.o stumsl.o stumxy.o vvumxy.o -o
/home/zang/bin/cnt \
libUTIL.a -L/usr/local/lib -lncarg -lncarg_gks -lncarg_c -L/usr/X11R6/lib64 -lX11 -L/usr/lib/gcc/i486-linux-gnu/4.1 -lgfortran -L/usr/lib -lpng -L/usr/local/lib -lnetcdf -L/usrlocal/lib -lhdf5_hl -lhdf5 -lz
ld: Warning: size of symbol `mapcm1_' changed from 48 in libUTIL.a(hbackground.o) to 40 in /usr/local/lib/libncarg.a(mapbd.o)
libUTIL.a(crash.o): In function `crash_':
crash.f90:(.text+0x19): undefined reference to `nf_close__'
crash.f90:(.text+0x41): undefined reference to `nf_close__'
crash.f90:(.text+0x167): undefined reference to `nf_strerror__'
libUTIL.a(crash.o):(.data+0x1c): undefined reference to `nf__create__'
libUTIL.a(crash.o):(.data+0x24): undefined reference to `nf__enddef__'
libUTIL.a(crash.o):(.data+0x28): undefined reference to `nf__create_mp__'
libUTIL.a(crash.o):(.data+0x2c): undefined reference to `nf_abort__'
...............
make: *** [/home/zang/bin/cnt] Error 1
You forget "/" between usr and local)))
PS Sorry for my english)))
-
- Posts: 12
- Joined: Wed Dec 10, 2008 10:15 pm
- Location: The University of Western Australia
Re: problem about the plotting package installation
Hi, all
Thanks for all your replies.
According to what your said, I have compiled the plotting package successfully!
Thanks again!
Thanks for all your replies.
According to what your said, I have compiled the plotting package successfully!
Thanks again!
-
- Posts: 2
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of China
Re: problem about the plotting package installation
I have problems in installing my plottingpackage……
could you help me?
Thanks!
[mengqingjun@node200 src]$ make
cd Build_plt; /data/mengqingjun/ncl/bin/ncargf90 -c -frepack-arrays -O3 -ffast-m
ath crash.f90
gfortran -fPIC -fno-second-underscore -O -c -frepack-arrays -O3 -ffast-math cras
h.f90 -L/data/mengqingjun/ncl/lib -L/usr/X11R6/lib64 -lncarg -lncarg_gks -lncarg
_c -lX11 -lXext -lpng -lz
In file crash.f90:110
IF (ierr.ne.nf_noerr) PRINT 10, nf_strerror (ierr)
1
Error: Symbol 'nf_noerr' at (1) has no IMPLICIT type
In file crash.f90:97
status=nf_close(ncid1)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
In file crash.f90:98
IF ((iref.eq.2).or.(iref.eq.3)) status=nf_close(ncid2)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
In file crash.f90:110
IF (ierr.ne.nf_noerr) PRINT 10, nf_strerror (ierr)
1
Error: Function 'nf_strerror' at (1) has no IMPLICIT type
make: *** [Build_plt/crash.o] Error 1
could you help me?
Thanks!
[mengqingjun@node200 src]$ make
cd Build_plt; /data/mengqingjun/ncl/bin/ncargf90 -c -frepack-arrays -O3 -ffast-m
ath crash.f90
gfortran -fPIC -fno-second-underscore -O -c -frepack-arrays -O3 -ffast-math cras
h.f90 -L/data/mengqingjun/ncl/lib -L/usr/X11R6/lib64 -lncarg -lncarg_gks -lncarg
_c -lX11 -lXext -lpng -lz
In file crash.f90:110
IF (ierr.ne.nf_noerr) PRINT 10, nf_strerror (ierr)
1
Error: Symbol 'nf_noerr' at (1) has no IMPLICIT type
In file crash.f90:97
status=nf_close(ncid1)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
In file crash.f90:98
IF ((iref.eq.2).or.(iref.eq.3)) status=nf_close(ncid2)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
In file crash.f90:110
IF (ierr.ne.nf_noerr) PRINT 10, nf_strerror (ierr)
1
Error: Function 'nf_strerror' at (1) has no IMPLICIT type
make: *** [Build_plt/crash.o] Error 1
Re: problem about the plotting package installation
The errors have to do with the NetCDF library, or perhaps the netcdf.inc file. Did it complain about not finding that file? Do you have that file and did you provide the path to it? That would be in the C preprocessing phase of compilation, which you don't show.
Re: problem about the plotting package installation
Hi Kate,
I have an error with the plotting package which is related to GNU:
Please help me to address it.
Bests,
Manh,
I have an error with the plotting package which is related to GNU:
Code: Select all
makefile:31: *** This makefile requires one of GNU make version 3.80 3.81 3.82.. Stop.
Bests,
Manh,
Re: problem about the plotting package installation
In the makefile inside the src directory replace:
with:
Code: Select all
NEED_VERSION := 3.80 3.81 3.82
$(if $(filter $(MAKE_VERSION),$(NEED_VERSION)),, \
$(error This makefile requires one of GNU make version $(NEED_VERSION).))
Code: Select all
ifneq (3.80,$(firstword $(sort $(MAKE_VERSION) 3.80)))
$(error This makefile requires GNU make version 3.80 or higher. \
Your current version is: $(MAKE_VERSION))
endif
Re: problem about the plotting package installation
Hi Robertson,
Following your suggestion, I can compile this package successfully.
Thank you very much!
Bests,
Manh,
Following your suggestion, I can compile this package successfully.
Thank you very much!
Bests,
Manh,