From: Dave Chinner <david@fromorbit.com>
To: Rich Johnston <rjohnston@sgi.com>
Cc: Eric Sandeen <sandeen@sandeen.net>, xfs@oss.sgi.com
Subject: Re: [PATCH] xfsprogs: libhandle/Makefile - fix make install
Date: Thu, 23 May 2013 09:04:30 +1000 [thread overview]
Message-ID: <20130522230430.GM29466@dastard> (raw)
In-Reply-To: <519D4136.6080908@sgi.com>
On Wed, May 22, 2013 at 05:05:42PM -0500, Rich Johnston wrote:
> On 05/22/2013 04:22 PM, Eric Sandeen wrote:
> >On 5/22/13 3:58 PM, rjohnston@sgi.com wrote:
> >>In the default section of libhandle/Makefile, ltdepend prevented
> >>libhandle.so from being installed properly so remove it.
> >
> >Can you explain how it prevented it?
> >
> >[sandeen@sandeen xfsprogs]$ grep ltdepend */Makefile
> >libdisk/Makefile:default: ltdepend $(LTLIBRARY)
> >libhandle/Makefile:default: ltdepend $(LTLIBRARY)
> >libxcmd/Makefile:default: ltdepend $(LTLIBRARY)
> >libxfs/Makefile:default: crc32selftest ltdepend $(LTLIBRARY)
> >libxlog/Makefile:default: ltdepend $(LTLIBRARY)
> >
> >seems to exist in every subdir, why is this one causing trouble?
> Because libhandle is the only one that is installed. ;)
So, after you've done a builds what does libhandle/.libs contain?
it shoul dlook something lik ethis:
$ ls -l libhandle/.libs/ total 180
-rw-r--r-- 1 dave dave 39416 May 23 08:50 handle.o
-rw-r--r-- 1 dave dave 21936 May 23 08:50 jdm.o
-rw-r--r-- 1 dave dave 61834 May 23 08:50 libhandle.a
lrwxrwxrwx 1 dave dave 15 May 23 08:50 libhandle.la -> ../libhandle.la
-rw-r--r-- 1 dave dave 938 May 23 08:50 libhandle.lai
lrwxrwxrwx 1 dave dave 18 May 23 08:50 libhandle.so -> libhandle.so.1.0.3
lrwxrwxrwx 1 dave dave 18 May 23 08:50 libhandle.so.1 -> libhandle.so.1.0.3
-rwxr-xr-x 1 dave dave 45667 May 23 08:50 libhandle.so.1.0.3
$
And the libhandle.lai should contain:
$ cat libhandle/.libs/libhandle.lai
libhandle.la - a libtool library file
# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.1
#
# Please DO NOT delete this file!
# It is necessary for linking the library.
# The name that we can dlopen(3).
dlname='libhandle.so.1'
# Names of this library.
library_names='libhandle.so.1.0.3 libhandle.so.1 libhandle.so'
# The name of the static archive.
old_library='libhandle.a'
# Linker flags that can not go in dependency_libs.
inherited_linker_flags=''
# Libraries that this one depends upon.
dependency_libs=''
# Names of additional weak libraries provided by this library
weak_library_names=''
# Version information for libhandle.
current=1
age=0
revision=3
# Is this an already installed library?
installed=yes
# Should we warn about portability when linking against -modules?
shouldnotlink=no
# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''
# Directory that this library needs to be installed in:
libdir='/lib'
$
See $library_names? That should be all the names that are created,
and there are three. The are set up via 'install-sh -T so_????'
options.
So, look at the install rules being run:
> cd ../libhandle/.libs;
Obvious.
> ../../install-sh -o root -g root -m 755 -d /lib64;
Setting owner/perms on /lib64.
> ../../install-sh -o root -g root -m 755 -T so_dot_version libhandle.lai /lib64;
"-T so_dot_version" is supposed to copy libhandle.so.1.0.3 to
/lib64/libhandle.so.1.0.3. i.e. install the current library.
> ../../install-sh -o root -g root -T so_dot_current libhandle.lai /lib64
That's supposed to set up the /lib64/libhandle.so.1 link back to
/lib64/libhandle.so.1.0.3.
And that's it. So, what's missing?
Right - there's nothing that sets up /lib64/libhandle.so i.e.
this is missing:
../../install-sh -o root -g root -T so_base libhandle.lai /lib64
which would set up the /lib64/libhandle.so link to
/lib64/libhandle.so.1.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2013-05-22 23:04 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-22 20:58 [PATCH] xfsprogs: libhandle/Makefile - fix make install rjohnston
2013-05-22 21:22 ` Eric Sandeen
2013-05-22 22:05 ` Rich Johnston
2013-05-22 23:04 ` Dave Chinner [this message]
2013-05-22 22:16 ` Dave Chinner
2013-05-23 13:52 ` [PATCH V2] xfsprogs: libhandle/Makefile - fix make install-dev rjohnston
2013-05-23 15:37 ` [PATCH V3] " rjohnston
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130522230430.GM29466@dastard \
--to=david@fromorbit.com \
--cc=rjohnston@sgi.com \
--cc=sandeen@sandeen.net \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.