[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: libtool 2.2.2 fails to create shared object
From: |
Ralf Wildenhues |
Subject: |
Re: libtool 2.2.2 fails to create shared object |
Date: |
Sun, 6 Apr 2008 11:22:12 +0200 |
User-agent: |
Mutt/1.5.17+20080114 (2008-01-14) |
Hello Bruno,
Thanks for the report.
* Bruno Haible wrote on Sun, Apr 06, 2008 at 11:01:40AM CEST:
>
> This is a regression: On Linux/i386, with libtool-1.5.26, I could create a
> preloadable shared object file through this command.
>
> $ /bin/sh ../libtool --mode=link gcc -I. -I../include -I.. -g -O2 -Wall \
> -I/packages/gnu/include -DLIBDIR=\"/packages/gnu/lib\" -DBUILDING_LIBICONV \
> -DBUILDING_DLL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY \
> -DINSTALLDIR=\"/packages/gnu/lib\" -DNO_XMALLOC \
> -Dset_relocation_prefix=libiconv_set_relocation_prefix \
> -Drelocate=libiconv_relocate -DHAVE_CONFIG_H -fPIC -DPIC -DLIBICONV_PLUG \
> ./iconv.c ./../libcharset/lib/localcharset.c ./relocatable.c \
> -shared -o preloadable_libiconv_linux.so
> It executed this command:
> gcc -I. -I../include -I.. -g -O2 -Wall -I/packages/gnu/include
> -DLIBDIR=\"/packages/gnu/lib\" -DBUILDING_LIBICONV -DBUILDING_DLL
> -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"/packages/gnu/lib\"
> -DNO_XMALLOC -Dset_relocation_prefix=libiconv_set_relocation_prefix
> -Drelocate=libiconv_relocate -DHAVE_CONFIG_H -fPIC -DPIC -DLIBICONV_PLUG
> ./iconv.c ./../libcharset/lib/localcharset.c ./relocatable.c -shared -o
> preloadable_libiconv_linux.so
No, I would not call that a regression. libtool never defined -shared
to do anything, but now it does, it never allowed the use of several
source files on one command line (although it probably should), and it
never documented that compiling and linking could be merged.
If you look closely, libtool 1.5.x doesn't change anything on your
command line, not even -fPIC -DPIC; and it won't translate those flags,
or -shared FWIW, to the flags needed on other systems: you can just omit
/bin/sh ../libtool --mode=link
from it and have the same results and portability issues.
Cheers,
Ralf