On Sunday 23 December 2007 23:15:41 Rodney Baker wrote:
On Sunday 23 December 2007 20:22:12 Maura Edelweiss Monville wrote:
I have just downloaded a package for spectral analysis . I followed the instructions. But when I launch it I get:
mauede@linux-ubuo:~/Breathing-Curves-Dir> ./Spectra & [2] 19675 [1] Exit 127 ./Spectra ./Spectra: error while loading shared libraries: libg2c.so.0: cannot open shared object file: No such file or directory [...]
I googled libg2c and came up with the following exchange on the debian-mentors list:
==========================================================
Mikael Hedin <mikael.hedin@gmx.net> writes:
I have a autoconf test that fails if i don't give -lg2c as extra link flags. Without g2c there are undefined references to e_wsfe, z_abs, c_sqrt, etc. Is not g2c an internal gcc thing?
That sounds like things generated by a FORTRAN compiler like g77. In the same way that C functions like printf(), abs(), and sqrt() aren't implemented directly in the compiler (you need to link with -lc [always added implicitly by *cc] and -lm), you need an external library to get the FORTRAN compatibility functions. Conventionally these are provided in libraries libF77.a and libI77.a, but g77 seems to provide a libg2c.a buried under /usr/lib/gcc-lib.
If you don't have libg2c.a, it seems to be included in the g77 (or g77-2.95) package.
-- David Maze dmaze@debian.org http://people.debian.org/~dmaze/ "Theoretical politics is interesting. Politicking should be illegal." -- Abra Mitchell ==========================================================
So it seems that you need to have the gcc g77 fortran compiler modules installed for your application. Suse does not have the g77 package - the fortran compiler is gcc42-fortran (compiler and support files) which is not installed by default.
Try installing it and have another go.
If that doesn't work, try libgfortran42.
Oops - should have read further. libg2c was part of gcc-g77 which was in gcc version 3. In gcc v4 (which is what is installed by openSuse) g77 was replaced by gfortran which does *not* include libg2c. libgfortran replaced libg2c and in installed as a dependency when you install gcc42-fortran. That being said, if your application has a dependency on libg2c, you will need to install a copy of gcc v3 and gcc-g77 (with its associated libraries). I'm pretty sure that v3 and v4 can coexist as long as they are in different paths, but I'll defer to others on the list with more experience to advise on that. Regards, -- =================================================== Rodney Baker VK5ZTV rodney.baker@optusnet.com.au =================================================== -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org