[daip] A question about the libtermcap library (and others) in Linux AIPS

Patrick P. Murphy pmurphy at NRAO.EDU
Sat Oct 27 20:42:03 EDT 2001


Hi Sam.  You wrote:

>    I am installing AIPS (31DEC00) on a PC Clone which is running
> Mandrake Linux 8.0. This is a new installation; there are no previous
> versions of AIPS installed. The Linux installation itself is also very new; 
> I loaded it with no apparent problems on 10/22/01.

>     I am running into what is for me a puzzle at the "link" stage of certain 
> programs in INSTEP3. The loader "/usr/bin/ld" has a switch "-ltermcap" on 

This almost certainly comes from the LIBR.DAT file in $SYSLOCAL.  

> It is failing to find this library.

That is odd.  However, it sounds from your second message (below) that you
sorted this out.  

> I have done some poking around and I find that I do have the following
> library:

> /lib/libtermcap.so.2.0.8

> however, I have no libtermcap.a

Shouldn't matter; "ld" knows how to deal with both static libraries (the
".a" type) and dynamic or shared object (.so) libraries.

> I have not got to the creation of the XAS program yet (or whatever takes
> its place in the 31DEC00 revision

It's still XAS.

> /usr/X11R6/lib/libX11.so.6
> but no
> libX11.a

This shouldn't matter.  The "-l" option to ld should allow it to pull in
either .so or .a libraries.

> I am experiencing this same .so versus .a issue in other installations:
> I cannot link Tim Pearson's PGPLOT package, for example, for lack of the
> libX11 library (presumably libX11.a?).

That is definitely weird.  You might want to check that you installed any
"developer" options on your Mandrake system.  Not having ever gone through
a Mandrake install, I can only surmise that it's in some way similar to a
Red Hat one.

Did you know there is a RPM for pgplot?  We have version 5.2.0 available
somewhere here; If you want it, let me know and I'll have our sysadmmins
dig you up a copy.  I can't find it in a quick casual glance around.

Your CD with Mandrake probably has a bunch of RPM (RedHat Package Module)
files on it.  These can be queried via:

      rpm -qilp rpmfilename.rpm

to query (q) and get info (i), a list of files (l) and operate on a
package (p).  You can converseley see the info and list-of-files
information on installed rpms by "rpm -qil rpmname" without the need for
the actual .rpm file.  And you can get a list of all rpms installed via
"rpm -qa" (there will be a lot).  Finally, you can see which package a
file, eg. /usr/lib/libX11.so belongs to via "rpm -qf /usr/lib/libX11.so".
On my home laptop (Red Hat 7.1), for example, I see that:

   bash$ rpm -qf /usr/X11R6/lib/libX11.so
   XFree86-devel-4.0.3-5
   bash$ rpm -qf /usr/X11R6/lib/libX11.a 
   XFree86-devel-4.0.3-5
   bash$ 

So both of these are in the XFree86-devel package.  I could do this:

   bash$ rpm -qil XFree86-devel | less

to see the (very long, hence I use the "less" pager) list of stuff in that
installed RPM.  

> It has occurred to me that I may have done something wrong in INSTEP1 in
> terms of configuring the installation process.

I don't think so.  It sounds more like the problem could be with the
Mandrake install.  Assuming my recollection that Mandrake uses RPMs is
correct, please check to see that you have the XFree86-devel package
loaded. 

> In a response to my immediately prior email, Pat Murphy inquired
> why I did not use the install.pl perl wizard. Perhaps this would test for 
> the existence of the .so libraries

It does many things, but I don't remember making it do that.

> Well, the answer is that I do not know how to invoke a perl script!

On Linux systems it's easy.  Either:

   ./install.pl

or

   perl ./install.pl

That's it.  But seeing as you're past most of the stuff that it would do,
I don't see the point in going back.  The best bet is to look at the
specific lines involving compilation that are failing, see their detailed
error messages, and figure out why it's happening.  I'm willing to help
with this effort.

> I solved the problems I was writing about by creating symbolic links to
> the respective .so.rev libraries,

It's really odd that Mandrake didn't do that for you when it installed.
I'd regard that as a serious bug.

				- Pat





More information about the Daip mailing list