]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
I noticed that my programs were not linking with the shared libs. Apparently
authorDean Roehrich <roehrich@sgi.com>
Tue, 31 Jul 2001 21:29:24 +0000 (21:29 +0000)
committerDean Roehrich <roehrich@sgi.com>
Tue, 31 Jul 2001 21:29:24 +0000 (21:29 +0000)
if you say something like (from the dmapi tests stuff):

gcc -g -O2 -o dm_handle dm_handle.o libdmtest.a -ldm -lhandle

it will link with whatever it finds in /usr/lib.  If there are no shared libs
there then it'll link with the static libs.  When I add a symlink to make
libdm.so and libhandle.so appear in /usr/lib then I am able to link to the
shared libs.
No Message Supplied

include/builddefs.in

index 8e70560c0b2d6c284e9da65efc33be77ec00aeb8..ff58626eeb1e4080889b5135a79a5ca1d198b7b5 100644 (file)
@@ -143,6 +143,9 @@ endif
 # Libtool thinks the static and shared libs should be in the same dir, so
 # make the static lib appear in the place we chose as rpath (using the two
 # symlinks below).
+# Other things want the shared libs to appear in /usr/lib, else they'll
+# link with the static libs there.  So, another symlink to get the .so into
+# /usr/lib.
 ifeq ($(ENABLE_SHARED),yes)
 INSTALL_LTLIB_DEV = \
        cd $(TOPDIR)/$(LIBNAME)/.libs; \
@@ -152,8 +155,8 @@ INSTALL_LTLIB_DEV = \
        ../$(INSTALL) -m 755 -d $(PKG_SLIB_DIR); \
        ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_SLIB_DIR); \
        ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).a $(PKG_SLIB_DIR)/$(LIBNAME).a; \
-       ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_SLIB_DIR)/$(LIBNAME).la
-
+       ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_SLIB_DIR)/$(LIBNAME).la; \
+       ../$(INSTALL) -S $(PKG_SLIB_DIR)/$(LIBNAME).so $(PKG_LIB_DIR)/$(LIBNAME).so
 else
 INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
 endif