bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

libtool 2.2.6 does not install libraries correctly on HP-UX


From: Bruno Haible
Subject: libtool 2.2.6 does not install libraries correctly on HP-UX
Date: Sun, 28 Sep 2008 19:05:43 +0200
User-agent: KMail/1.5.4

When libtool attempts to install a shared library on HP-UX, it does so
without execution bits, immediately breaking all programs that are
linked to this library.

I have a previous version of gettext (libintl) installed, and a few programs
like 'mkdir' or 'install' that are linked against it. While installing a new
version of libintl, this error occurs:

$ /bin/sh ../libtool --mode=install /opt/gnu/bin/install -c -m 644 libintl.la 
/opt/gnu/lib/libintl.la
libtool: install: /opt/gnu/bin/install -c -m 644 .libs/libintl.sl.8.2 
/opt/gnu/lib/libintl.sl.8.2
libtool: install: (cd /opt/gnu/lib && { ln -s -f libintl.sl.8.2 libintl.sl.8 || 
{ rm -f libintl.sl.8 && ln -s libintl.sl.8.2 libintl.sl.8; }; })
/usr/lib/dld.sl: Call to mmap() failed - TEXT /opt/gnu/lib/libintl.sl.8
/usr/lib/dld.sl: Permission denied
../libtool[2]: 21152 Abort

These are the libraries here:

lrwxrwxrwx   1 haible     user            14 Sep 28 18:52 libintl.sl.8 -> 
libintl.sl.8.2
-r-xr-xr-x   1 haible     user        258976 Jul 21  2006 libintl.sl.8.0
-r-xr-xr-x   1 haible     user        345600 Dec 19  2006 libintl.sl.8.1
-rw-r--r--   1 haible     user        277736 Sep 28 18:52 libintl.sl.8.2

In consequence, some programs don't work:

$ /opt/gnu/bin/mkdir --version
/usr/lib/dld.sl: Call to mmap() failed - TEXT /opt/gnu/lib/libintl.sl.8
/usr/lib/dld.sl: Permission denied
ABORT instruction

After I set the permission bits manually, the programs work again:

$ chmod 555 /opt/gnu/lib/libintl.sl.8.2
$ /opt/gnu/bin/mkdir --version
mkdir (GNU coreutils) 6.7-dirty
...

I have specified "-m 644" to 'install' because that is the normal way to
install data files like *.la files. But libtool should know that when applying
it to a HP-UX shared library file (pattern *.sl*), it has to turn the "-m 644"
into "-m 755".

Bruno





reply via email to

[Prev in Thread] Current Thread [Next in Thread]