Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Linken von Bibliotheken

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - C
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Andreas
Gast





BeitragVerfasst am: 25. Apr 2001 16:46   Titel: Linken von Bibliotheken

Hallo zusammen !

Habe 'ne Frage bezüglich des Linkens von Bibliotheken. Folgende Situation: ich bin normaler User im System ohne
root-Rechte. Jetzt habe ich eine Bibliothek (NURBS++, falls die jemand kennt ... ) erfolgreich kompiliert und
in meinem Home-Verzeichnis unter ~/nurbs/lib (includes unter ~/nurbs/include/ ) installiert. Jetzt möchte ich gerne
mein eigenes Programm erfolgreich kompilieren können, was auch bis zum Linken geht. Dann kommen Meldungen der Art
"undefined reference oder ld32: FATAL 52: __do_global_ctors is not specified in current object, ... etc. "

Auf dem System ist der g++-2.95.2. Gelinkt wird mit den Optionen
" - g -lc -lm -O -Wall -nostdlib -L~/nurbs/lib -l<name der Bibliotheken ohne lib>"
Desweiteren ist in LD_LIBRARY_PATH mein lib verzeichnis enthalten.

Meine Frage ist nun was mache ich falsch und geht das, was ich vorhabe überhaupt ?! ldconfig funktioniert
ja leider nicht als normal-User.

Besten Dank im voraus.

Andreas
 

hjb
Pro-Linux


Anmeldungsdatum: 15.08.1999
Beiträge: 3236
Wohnort: Bruchsal

BeitragVerfasst am: 26. Apr 2001 15:56   Titel: Re: Linken von Bibliotheken

Hi,

eigentlich müßte es so gehen. Vielleicht hat der Autor von NURBS++ da einen Fehler gemacht. Du solltest mal schauen, wo das Symbol __do_global_ctors definiert ist.

Was passiert, wenn du die Optionen -lc, -lm und -nostdlib wegläßt? Mich beschleicht der Verdacht, daß es daher kommt.

Gruß,
hjb
_________________
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger

Jochen
Gast





BeitragVerfasst am: 26. Apr 2001 16:32   Titel: Re: Linken von Bibliotheken

Öhm, wenn Du oben die Linker-Zeile exakt so verwendest, würde ich
-L ~/nurbs/lib
verwenden statt
-L~/nurbs/lib
(man beachte das Leerzeichen zwischen "-L" und "~/nurbs/lib"!).

Wenn die Shell die Tilde nicht als erstes Zeichen eines Wortes sieht, beachtet sie es nicht weiter. Und der Linker löst die ~ sicherlich nicht auf...
 

Andreas
Gast





BeitragVerfasst am: 26. Apr 2001 19:24   Titel: Re: Linken von Bibliotheken

Halli !

@hjb:
Hab ich schon ausprobiert, ohne Erfolg :(

@jochen:
ich habe es nun mit absoluten Pfaden probiert, ohne Erfolg :(

Irgendwie schafft der g++ es nie, die Symbole in der Bibliothek richtig aufzulösen. Nun, ich werd's weiter versuchen.

Trotzdem Danke für die Antworten ! ;)

Andreas
 

hjb
Pro-Linux


Anmeldungsdatum: 15.08.1999
Beiträge: 3236
Wohnort: Bruchsal

BeitragVerfasst am: 27. Apr 2001 14:32   Titel: Re: Linken von Bibliotheken

Hi,

es scheint ja ein C++-Programm zu sein. Du muß dann evtl. noch libstdc++ und libgcc hinzulinken (libgcc ist aber, glaube ich, inzwischen tot, doch um libstdc++ wirst du wohl nicht herumkommen).

Gruß,
hjb
_________________
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger

martell



Anmeldungsdatum: 28.04.2001
Beiträge: 1

BeitragVerfasst am: 28. Apr 2001 2:54   Titel: Re: Linken von Bibliotheken

Hmpf, er mag irgendwie nicht ...

Es ist übrigens ein C++-Programm. Aber auch das Linken der libstdc++ bzw. libgcc
überzeugt ihn nicht.

Nun, ich werd's weiter versuchen ....

Andreas
 
Benutzer-Profile anzeigen Private Nachricht senden

kdefreak
Gast





BeitragVerfasst am: 30. Apr 2001 8:17   Titel: Re: Linken von Bibliotheken

mail eine blöde Frage:

kompilierst und linkst du auch wirklich mit g++ ? oder nur mit gcc ?

man sollte alles mit g++ machen, da er sich dann wie ein C++-Compiler verhält, gcc verhält sich standardmäßig wie ein C-Compiler.

der g++ sollte beim linken automatisch die stdlibc++ hinzulinken, dann sollte es gehen.
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - C Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy