Kdevelop and libraries behavior

p_george p_george at club-internet.fr
Sun Nov 7 16:33:48 GMT 1999


When a project contains subdirs, kdevelop makes libraries for each
subdirs and link object files of the root dir with lib*.a.

I had linking problem (unresolved symbols) with kuml that are now solved
using a working project file (thanks to Darius Stachow).

But I don't understand why such a thing did not work :
----------------------------------------------------

/bin/sh ../libtool --silent --mode=link g++  -O0 -g3 -Wall     -o kuml
-L/usr/lib  -L/usr/X11R6/lib -rpath /usr/lib -rpath /usr/X11R6/lib
projects.o kumlview.o kumldoc.o iokumlutility.o kuml.o  kumldoc.moc.o
kuml.moc.o kumlview.moc.o main.o ./data/libdata.a
./diagrams/libdiagrams.a ./dlgs/libdlgs.a ./drawobj/libdrawobj.a
./drawobj/helper/libhelper.a ./lines/liblines.a
./overview/liboverview.a  -lkdeui -lkdecore -lqt -lXext -lX11

[which gives many many undefined references]

and this does work (I manually type it, changing some foo/libfoo.a to
foo/*.o) :

/bin/sh ../libtool --silent --mode=link g++  -O0 -g3 -Wall     -o kuml
-L/usr/lib  -L/usr/X11R6/lib -rpath /usr/lib -rpath /usr/X11R6/lib
projects.o kumlview.o kumldoc.o iokumlutility.o kuml.o  kumldoc.moc.o
kuml.moc.o kumlview.moc.o main.o ./data/*.o ./diagrams/*.o ./dlgs/*.o
./drawobj/*.o ./drawobj/helper/libhelper.a ./lines/liblines.a
./overview/liboverview.a  -lkdeui -lkdecore -
lqt -lXext -lX11 

=> As the order is exactly the same, is it normal that the first compile
try, made by kdevelop, does not work ?
If there is a real problem, why does kdevelop makes libraries, and does
not link directly with the object files ?

(I use kdevelop 1beta4.1 and gcc 2.95.2).





More information about the KDevelop mailing list