Linux - DesktopThis forum is for the discussion of all Linux Software used in a desktop context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hi all,
i know it may be an easy question but it is hard for me. when i ask the guy who maintain the Linux system about Netcadf files he replies.
"I didn't compile the library, I installed the rpm & devel rpm for netcdf. The library came from the rpm from CentOS 5 or rpmforge not sure which [if Centos didnt have them they were from rpmforge]"
my question is
what is that mean???
if he installed this library. How can i find it (what is the correct command to find it)
Hi all,
i know it may be an easy question but it is hard for me. when i ask the guy who maintain the Linux system about Netcadf files he replies.
"I didn't compile the library, I installed the rpm & devel rpm for netcdf. The library came from the rpm from CentOS 5 or rpmforge not sure which [if Centos didnt have them they were from rpmforge]"
my question is
what is that mean???
if he installed this library. How can i find it (what is the correct command to find it)
Thanks
In which sense is it failing for you? We need to know that to be able to guess what the problem might be.
If a given program can't run because it doesn't find the libs, then obviously the libs are not installed on the correct place, or not installed at all, or they are not valid for your architecture.
If you can't compile anything that needs netcdf, then the problem is that either you haven't the devel package installed, for you are not pointing your compile to the correct path to find the development files.
That might be the problem. Setting correctly LD_LIBRARY_PATH to add the place where your fortran stuff resides seems to fix the problem. Unfortunately I haven't enabled the fortran compiler on my gcc and can't test it. Check this thread as well:
it is a very useful help. i found the package and all the related data. have a look below.
So please could u tell me how to do my next steps?
sorry for my questions i am still beginner in the field
[enxmabm@caunton ~]$ rpm -q netcdf
netcdf-3.6.3-1.el5.rf
[enxmabm@caunton ~]$ rpm -qi netcdf
Name : netcdf Relocations: (not relocatable)
Version : 3.6.3 Vendor: Dag Apt Repository, http://dag.wieers.com/apt/
Release : 1.el5.rf Build Date: Mon 30 Jun 2008 08:54:52 PM BST
Install Date: Wed 03 Sep 2008 11:10:52 AM BST Build Host: lisse.leuven.wieers.com
Group : Development/Libraries Source RPM: netcdf-3.6.3-1.el5.rf.src.rpm
Size : 3248222 License: BSD like
Signature : DSA/SHA1, Mon 30 Jun 2008 09:03:15 PM BST, Key ID a20e52146b8d79e6
Packager : Dries Verachtert <dries@ulyssis.org>
URL : http://www.unidata.ucar.edu/software/netcdf/
Summary : Libraries for the Unidata network Common Data Form (NetCDF)
Description :
The Unidata network Common Data Form (netCDF) is an interface for
scientific data access and a freely-distributed software library that
provides an implementation of the interface. The netCDF library also
defines a machine-independent format for representing scientific data.
Together, the interface, library, and format support the creation,
access, and sharing of scientific data.
[enxmabm@caunton ~]$ rpm -ql netcdf
/usr/bin/ncdump
/usr/bin/ncgen
/usr/lib64/libnetcdf.so.4
/usr/lib64/libnetcdf.so.4.0.0
/usr/lib64/libnetcdf_c++.so.4
/usr/lib64/libnetcdf_c++.so.4.0.0
/usr/lib64/libnetcdff.so.4
/usr/lib64/libnetcdff.so.4.0.0
/usr/share/doc/netcdf-3.6.3
/usr/share/doc/netcdf-3.6.3/INSTALL
/usr/share/doc/netcdf-3.6.3/README
/usr/share/info/netcdf-c.info.gz
/usr/share/info/netcdf-cxx.info.gz
/usr/share/info/netcdf-f77.info.gz
/usr/share/info/netcdf-f90.info.gz
/usr/share/info/netcdf-install.info.gz
/usr/share/info/netcdf-tutorial.info.gz
/usr/share/info/netcdf.info.gz
/usr/share/man/man1/ncdump.1.gz
/usr/share/man/man1/ncgen.1.gz
/usr/share/man/man3/netcdf.3.gz
/usr/share/man/man3/netcdf_f77.3.gz
/usr/share/man/man3/netcdf_f90.3.gz
[enxmabm@caunton ~]$
I'm confused, you said the admin installed the packages,
why do you need "make" if it is already installed?
Should you not configure your program to use the library rather than running ./configure on the installed package?
regards Glenn
I will try to clarify the problem.
I am working with software called FVCOM. I am doing well with it. When I works to have Netcdf output. It is clear in the FVCOM manual that I have to uncomment flag 6 and to put the correct path. Which I believe I did as follow:
#--------------------------------------------------------------------------
# NETCDF OUTPUT DUMP OUTPUT INTO NETCDF FILES (yes/no)
# REQUIRES SYSTEM DEPENDENT NETCDF LIBRARIES
# COMPILED WITH SAME F90 COMPILER
# SET PATH TO LIBRARIES WITH IOLIBS
# SET PATH TO INCLUDE FILES (netcdf.mod) WITH IOINCS
# DEFAULT: NO NETCDF OUTPUT
# UNCOMMENT TO INCLUDE NETCDF OUTPUT CAPABILITY
#--------------------------------------------------------------------------
FLAG_6 = -DNETCDF_IO
IOLIBS = -L/usr/lib64 -lnetcdf
IOINCS = -I/usr/include
Then I saved the new FVCOM makefile. When I gave the command make to the new makefile I had the following error (Sorry I copy long part of the output which is long).
Hence I start to think about did I have the netcdf file installed or not? Did I have them installed correctly or not? That is the case.
Please ask me for any further clarification. I appreciate your effort with me.
[enxmabm@caunton ~]$ cd ..
[enxmabm@caunton home]$ cd ..
[enxmabm@caunton /]$ cd scratch/enxmabm/FVCOM2.6.1/FVCOM_source/
[enxmabm@caunton FVCOM_source]$ emacs makefile
[enxmabm@caunton FVCOM_source]$ make
gfortran -O3 -o fvcom mod_prec.o mod_types.o mod_main.o mod_utils.o mod_par.o mod_inp.o mod_wd.o mod_assim.o mod_probe.o mod_clock.o mod_obcs.o mod_ncdio.o mod_spherical.o mod_wqm.o mod_gotm.o mod_equitide.o mod_atmotide.o mod_northpole.o mod_balance_2d.o mod_ncdave.o mod_tsobc.o mod_meanflow.o mod_obcs2.o mod_obcs3.o mod_dye.o mod_newinp.o mod_tridiag.o mod_scal.o mod_sed.o particle.o linklist.o mod_lag.o utilities.o adjust2d3d.o advave_edge_gcn.o advection_edge_gcn.o adv_q.o adv_s.o adv_t.o adv_uv_edge_gcn.o alloc_vars.o archive.o arcrst.o atg.o fct_s.o fct_t.o baropg.o bcmap.o bcond_bfw.o bcond_gcn.o bcond_ts.o bcs_force.o brough.o brough_ud.o bracket.o cell_area.o closefiles.o conv_over.o data_run.o dens.o dens2.o depth_grad.o domdec.o extel_edge.o extuv_edge.o genmap.o getdim.o initial_qql.o hot_start_data.o initial_ts.o initial_uvel.o iofiles.o out_avge.o out_binary.o out_sms_one.o pdomdec.o phy_baropg.o report.o sectinf.o set_bndry.o set_sigma.o shape_coef_gcn.o sinter.o startup.o svan.o theta.o us_fvcom.o tge.o vdif_q.o vdif_ts.o vdif_uv.o vertvl_edge.o water_depth.o wreal.o ghostuv.o dens3.o init_sed.o advave_edge_gcy.o advection_edge_gcy.o adv_uv_edge_gcy.o bcond_gcy.o shape_coef_gcy.o depth_check.o vdif_ts_gom.o adjust_ts.o shutdown_check.o extelpf_edge.o fct_q2.o fct_q2l.o viscofh.o print_vals.o rho_mean.o viz.o -L/usr/lib64 -lnetcdf
mod_ncdio.o: In function `__mod_ncdio__handle_ncerr':
mod_ncdio.f90:.text+0x125): undefined reference to `__netcdf__nf90_strerror'
mod_ncdio.o: In function `__mod_ncdio__putvar':
mod_ncdio.f90:.text+0x11e4): undefined reference to `__netcdf__nf90_put_var_2d_fourbytereal'
mod_ncdio.o: In function `__mod_ncdio__write_netcdf_setup':
mod_ncdio.f90:.text+0x2122): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_ncdio.f90:.text+0x2222): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_ncdio.f90:.text+0x231a): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_ncdio.f90:.text+0x2819): undefined reference to `__netcdf__nf90_create'
mod_ncdio.f90:.text+0x2889): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x28ec): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x294f): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x29b2): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2a17): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.o:mod_ncdio.f90:.text+0x2a7d): more undefined references to `__netcdf__nf90_put_att_text' follow
mod_ncdio.o: In function `__mod_ncdio__write_netcdf_setup':
mod_ncdio.f90:.text+0x2ac3): undefined reference to `__netcdf__nf90_def_dim'
mod_ncdio.f90:.text+0x2ae9): undefined reference to `__netcdf__nf90_def_dim'
mod_ncdio.f90:.text+0x2b0f): undefined reference to `__netcdf__nf90_def_dim'
mod_ncdio.f90:.text+0x2b35): undefined reference to `__netcdf__nf90_def_dim'
mod_ncdio.f90:.text+0x2b5b): undefined reference to `__netcdf__nf90_def_dim'
mod_ncdio.o:mod_ncdio.f90:.text+0x2b81): more undefined references to `__netcdf__nf90_def_dim' follow
mod_ncdio.o: In function `__mod_ncdio__write_netcdf_setup':
mod_ncdio.f90:.text+0x2d34): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_ncdio.f90:.text+0x2d60): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2dd6): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_ncdio.f90:.text+0x2e02): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2e78): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_ncdio.f90:.text+0x2ea4): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2f12): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_ncdio.f90:.text+0x2f3e): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2f6a): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x2fd8): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_ncdio.f90:.text+0x3004): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x3030): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdio.f90:.text+0x309e): undefined reference to `__netcdf__nf90_def_var_manydims'
`__netcdf__nf90_put_att_text'
mod_ncdave.f90:.text+0x5dbd): undefined reference to `__netcdf__nf90_put_att_text'
mod_ncdave.f90:.text+0x5de9): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.o: In function `__mod_lag__dump_particles_ncd':
mod_lag.f90:.text+0x378c): undefined reference to `__netcdf__nf90_open'
mod_lag.f90:.text+0x37cf): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x3837): undefined reference to `__netcdf__nf90_put_var_fourbytereal'
mod_lag.f90:.text+0x387d): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x38ee): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_lag.f90:.text+0x390c): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x397d): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_lag.f90:.text+0x399b): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x3a0c): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_lag.f90:.text+0x3a2a): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x3a9b): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_lag.f90:.text+0x3ad8): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x3b6b): undefined reference to `__netcdf__nf90_put_var_1d_fourbytereal'
mod_lag.f90:.text+0x3b7c): undefined reference to `__netcdf__nf90_close'
mod_lag.f90:.text+0x3dc2): undefined reference to `__netcdf__nf90_strerror'
mod_lag.f90:.text+0x3ef8): undefined reference to `__netcdf__nf90_strerror'
mod_lag.o: In function `__mod_lag__output_lag':
mod_lag.f90:.text+0x41fa): undefined reference to `__netcdf__nf90_create'
mod_lag.f90:.text+0x427e): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x42de): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x438b): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x43d7): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4435): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x44f4): undefined reference to `__netcdf__nf90_put_att_one_fourbyteint'
mod_lag.f90:.text+0x451a): undefined reference to `__netcdf__nf90_def_dim'
mod_lag.f90:.text+0x4540): undefined reference to `__netcdf__nf90_def_dim'
mod_lag.f90:.text+0x45ec): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x4618): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4644): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x46b2): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x46de): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x470a): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4778): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x47a4): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x47d0): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x483e): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x486a): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4896): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4904): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x4930): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x495c): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x49e4): undefined reference to `__netcdf__nf90_def_var_manydims'
mod_lag.f90:.text+0x4a42): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4aa0): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x4ad2): undefined reference to `__netcdf__nf90_enddef'
mod_lag.f90:.text+0x4ae3): undefined reference to `__netcdf__nf90_close'
mod_lag.f90:.text+0x4bbe): undefined reference to `__netcdf__nf90_strerror'
mod_lag.o: In function `__mod_lag__set_lag':
mod_lag.f90:.text+0x55cd): undefined reference to `__netcdf__nf90_open'
mod_lag.f90:.text+0x563c): undefined reference to `__netcdf__nf90_get_att_text'
mod_lag.f90:.text+0x56ab): undefined reference to `__netcdf__nf90_get_att_one_fourbyteint'
mod_lag.f90:.text+0x56d1): undefined reference to `__netcdf__nf90_get_att_one_fourbyteint'
mod_lag.f90:.text+0x56f7): undefined reference to `__netcdf__nf90_get_att_one_fourbytereal'
mod_lag.f90:.text+0x5be5): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x5c05): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x5c25): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x5c45): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.f90:.text+0x5c65): undefined reference to `__netcdf__nf90_inq_varid'
mod_lag.o:mod_lag.f90:.text+0x5c85): more undefined references to `__netcdf__nf90_inq_varid' follow
mod_lag.o: In function `__mod_lag__set_lag':
mod_lag.f90:.text+0x5d60): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x5dc2): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x5e24): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x5e86): undefined reference to `__netcdf__nf90_get_var_fourbyteint'
mod_lag.f90:.text+0x5ee8): undefined reference to `__netcdf__nf90_get_var_fourbyteint'
mod_lag.f90:.text+0x5f4a): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x5fac): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x600e): undefined reference to `__netcdf__nf90_get_var_fourbytereal'
mod_lag.f90:.text+0x6085): undefined reference to `__netcdf__nf90_close'
mod_lag.f90:.text+0x66f5): undefined reference to `__netcdf__nf90_strerror'
mod_lag.o: In function `__mod_lag__dump_lag_restart':
mod_lag.f90:.text+0x84fb): undefined reference to `__netcdf__nf90_create'
mod_lag.f90:.text+0x8563): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x85a9): undefined reference to `__netcdf__nf90_put_att_one_fourbyteint'
mod_lag.f90:.text+0x85cd): undefined reference to `__netcdf__nf90_put_att_one_fourbytereal'
mod_lag.f90:.text+0x85f1): undefined reference to `__netcdf__nf90_put_att_one_fourbyteint'
mod_lag.f90:.text+0x8613): undefined reference to `__netcdf__nf90_def_dim'
mod_lag.f90:.text+0x864d): undefined reference to `__netcdf__nf90_def_var_onedim'
mod_lag.f90:.text+0x8682): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x86af): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x86d9): undefined reference to `__netcdf__nf90_def_var_onedim'
mod_lag.f90:.text+0x8706): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.f90:.text+0x8733): undefined reference to `__netcdf__nf90_put_att_text'
mod_lag.o: In function `__mod_lag__dump_lag_restart':
mod_lag.f90:.text+0x8dae): undefined reference to `__netcdf__nf90_put_var_1d_fourbyteint'
mod_lag.f90:.text+0x8e25): undefined reference to `__netcdf__nf90_put_var_1d_fourbyteint'
mod_lag.f90:.text+0x8e34): undefined reference to `__netcdf__nf90_close'
mod_lag.f90:.text+0x90f5): undefined reference to `__netcdf__nf90_strerror'
collect2: ld returned 1 exit status
make: *** [fvcom] Error 1
[enxmabm@caunton FVCOM_source]$
I think that the problem is still the one I described above. Since you did not comment anything about my other post, I assume you still didn't try.
Your compiler can't find the relevant symbols, and that might be just because you haven't properly configured the correct library paths for the fortran libs. The headers are found, and hence, it compiles find. But the dynamic libs can't be found, and that's why it fails miserably at linking stage. That's what the manuals and mailings that I link on the other post say, and that's what my experience suggests me as well. I can't test as I said because I am not too fond about recompiling gcc to enable fortran, which I intentionally disabled long ago.
So, if you can't find a solution, scroll back and re-read my previous posts, and the links I posted.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.