[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Three problems with libtools
From: |
Marc Espie |
Subject: |
Three problems with libtools |
Date: |
Mon, 2 Oct 2000 10:41:12 +0200 |
I've noticed these problems with kde2 (beta 1.94), I'm not sure these are
solved in current. At least one isn't.
* when invoking gcc to produce shared libraries, always pass pic_flag
around. On some a.out systems, gcc goes through collect2 before attacking
ld, and collect2 does create stub code that it passes off to a gcc instance...
using the exact same flags that gcc -shared was invoked with, including
(or not) any pic flags (note that collect2 can't decide for itself, as this
can be -fpic or -fPIC).
* on OpenBSD, it is quite possible to compile shared libraries, and test
for their presence. However, libtool does insist that libgcc ought to be
a shared library as well... Is there a way to disable that ?
I can always use pass_all instead, but... it would be cleaner.
* the link lines output by libtool are ludicrously long. Since our linker
does NOT prune excess libraries, but reloads the symbols each time, this
is a fairly large problem... Observe:
c++ -O2 -frtti -DQT_CLEAN_NAMESPACE -DQT_NO_COMPAT -DQT_NO_ASCII_CAST -o
.libs/kdeinit kinit.o setproctitle.o -L/usr/local/lib/qt2 -L/usr/X11R6/lib
-L/usr/local/lib -L../dcop/.libs -lSM -lICE -lICE -lSM -lICE
-L/usr/lib/gcc-lib/i386-unknown-openbsd2.7/2.95.3 -L../kparts/.libs -lkparts
-L/var/www/work/home/espie/kde/libs/kdelibs-1.94/kfile/.libs -lkfile
-L/var/www/work/home/espie/kde/libs/kdelibs-1.94/kio/.libs -lSM -lICE -lICE
-lSM -lICE -lSM -lICE -lICE -lSM -lICE -lSM -lICE -lICE -lSM -lICE -lSM -lICE
-lICE -lSM -lICE -L../kio/.libs -lksycoca -lSM -lICE -lICE -lSM -lICE -lSM
-lICE -lICE -lSM -lICE -L../kdeui/.libs -lSM -lICE -lICE -lSM -lICE -lkio
-L/var/www/work/home/espie/kde/libs/kdelibs-1.94/kdeui/.libs -lkdeui -lSM -lICE
-lICE -lSM -lICE -L/var/www/work/home/espie/kde/libs/kdelibs-1.94/kdesu/.libs
-lkdesu -L/var/www/work/home/espie/kde/libs/kdelibs-1.94/kdecore/.libs -lSM
-lICE -lICE -lSM -lICE -L../kdecore/.libs -lkdecore
-L/var/www/work/home/espie/kde/libs/kdelibs-!
1.!
94/dcop/.libs -lDCOP -lSM -lICE -lICE -lqt -lpng -lz -ljpeg -lXext -lX11 -lSM
-lICE -lstdc++ -lm -lgcc -lutil -R/usr/local/lib -R/usr/local/lib/qt2
-R/usr/X11R6/lib
Notice the multiple instances of ICE and SM... this leads to ld taking 90Mb
to link the above program...
--
Marc Espie
|anime, sf, juggling, unicycle, acrobatics, comics...
|AmigaOS, OpenBSD, C++, perl, Icon, PostScript...
| `real programmers don't die, they just get out of beta'
- Three problems with libtools,
Marc Espie <=