Date: Mon, 17 Jul 2000 09:20:32 +0300 From: Maxim Sobolev <sobomax@FreeBSD.org> To: Satoshi - Ports Wraith - Asami <asami@FreeBSD.org> Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: ports/x11-toolkits/xforms Makefile ports/x11-toolkits/xforms/pkg PLIST Message-ID: <3972A5B0.B0889573@FreeBSD.org> References: <200007141159.EAA97550@freefall.freebsd.org> <vqc1z0ufnkd.fsf@silvia.hip.berkeley.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Satoshi - Ports Wraith - Asami wrote:
> * From: Maxim Sobolev <sobomax@FreeBSD.org>
>
> * Create libform.so --> libxform.so.1 link, because it seems that library has
> * been built with --soname option and w/o this link dynamically-linked
> * executables don't work.
>
> I'm missing something here. What does the symlink have to do with
> dynamically-linked executables? .so links are supposed to be used for
> compile-time linkage only.
>
> And -soname is supposed to be there, it's not like it's this
> software's mistake to include it.
Ok, it seems that I should slightly expand my explanation.
The xforms libraries comes only in binary form but author was stupid enough to
compile shared library with "-soname libforms.so", while the library is installed
under libxform.so.1 name. Therefore after you linked it dynamically the resulting
executable appears to be linked with nonexisting libform.so shared library.
$ echo 'int main() {}' > x.c
$ cc x.c -o x -L/usr/X11R6/lib -lxforms -lX11 -lm
$ ldd x
x:
libforms.so => /usr/X11R6/lib/libforms.so (0x28064000)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28135000)
libm.so.2 => /usr/lib/libm.so.2 (0x28226000)
libc.so.4 => /usr/lib/libc.so.4 (0x28241000)
libc.so.3 => /usr/lib/compat/libc.so.3 (0x282d1000)
-Maxim
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3972A5B0.B0889573>
