SeeksTheMoon
26-01-2005, 10:03
Ich habe ein Problem mit einer C++Anwendung: Das Kompilieren klappt, aber das Linken geht in die Hose und ich weiß nicht warum.
Ich habe ein Projektverzeichnis und darin ein Verzeichnis "out" mit meinen Bibliotheken, gegen die das Programm gelinkt werden soll.
Ich (bzw. mein buildtool scons) kompiliere aus dem Projektverzeichnis mit
g++ -fPIC -Iout/include/cs -Iout/include -c -o src/common/util.cpp
g++ -shared -o libutil.so src/common/util.os
g++ -Iout/include/cs -Iout/include -c -o src/Client.o src/client/Client.cpp
g++ -o out/bin/Client src/client/Client.o -Lout/lib -Lout/lib/cs -lutil
Das *muss* so einfach klappen, aber jede Methode, jeder Konstruktor und jeder Destruktor liefert im letzten Schritt eine "undefined reference".
Also: Kompilieren ok, Linken trotz -L und -l-Parameter geht schief... warum?
Ich habe ein Projektverzeichnis und darin ein Verzeichnis "out" mit meinen Bibliotheken, gegen die das Programm gelinkt werden soll.
Ich (bzw. mein buildtool scons) kompiliere aus dem Projektverzeichnis mit
g++ -fPIC -Iout/include/cs -Iout/include -c -o src/common/util.cpp
g++ -shared -o libutil.so src/common/util.os
g++ -Iout/include/cs -Iout/include -c -o src/Client.o src/client/Client.cpp
g++ -o out/bin/Client src/client/Client.o -Lout/lib -Lout/lib/cs -lutil
Das *muss* so einfach klappen, aber jede Methode, jeder Konstruktor und jeder Destruktor liefert im letzten Schritt eine "undefined reference".
Also: Kompilieren ok, Linken trotz -L und -l-Parameter geht schief... warum?