Aktuelle Zeit: 22.05.2013 17:01

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 15:22 
Offline

Registriert: 28.04.2007 03:04
Wohnort: Einhausen, Südhessen
Hallo,

gestern habe ich auf OpenSuse 12.1 umgestellt, alle nötigen Pakete geladen wie angegeben, Checkinstall.pb meldet, es sei jetzt alles wohl korrekt installiert. Dennoch kann ich keines meiner Programme mehr kompilieren, es kommen stets Meldungen mit Linkerfehlern, wie "undefined reference to symbol dlsym@@GLIBC_2.0" und weiteren kryptischen Zusätzen. Es kommen je nach Programm verschiedene Fehlermeldungen, aber keines läuft.

Bis gestern konnte ich die Programme unter Pb 4.6 und OpenSuse 11.4 noch übersetzen und starten.

Hat noch jemand das Problem? Weiss jemand Rat? Aber bitte keinen Vorschlag á la "zurück zu OpenSuse 11.4" oder zu einer anderen Linuxdistribution.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 17:32 
Offline

Registriert: 20.06.2007 10:56
Das Problem tritt auch in bestimmten Situationen bei anderen Distributionen auf, ist dort aber scheinbar nicht so extrem wie Du es schilderst. Ich hab selber die OpenSuse 12.1 noch nicht getestet. Bei anderen Distributionen gibt es oft einen "hint" wo das Symbol welches nicht gefunden wurde, sich befindet. Der Fehler ist schon mehrfach gemeldet (und leider auch einmal als "Done" abgehakt worden) z.B. hier: http://www.purebasic.fr/english/viewtop ... 23&t=48101

Gefixt werden kann es über eine Import/EndImport Zeile wie z.B.

Code:
ImportC "-lm" : EndImport


für die Mathlib. Welche genau Du brauchst, sollte Dir die Fehlermeldung zumindestens grob sagen :)

Vielleicht hilft Dir das Beispiel dort im englischen Thread die richtigen Libs zu bestimmen und zumindestens damit erstmal unter OpenSuse 12.1 zu compilen.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 19:49 
Offline

Registriert: 28.04.2007 03:04
Wohnort: Einhausen, Südhessen
Danke für die rasche Antwort.

Aber ich habe es nicht hinbekommen. Ich habe

Code:
ImportC "-lm" : EndImport
ImportC "-lz" : EndImport


direkt am Anfang des Programms eingefügt, es kommt die gleiche Fehlermeldung vom Linker. Daraus werde ich aber nicht schlau. Ich habe versucht, sie hier als Grafik einzublenden, es gelingt mir nicht (habe oben IMG gewählt und versucht, es wie einen Codeschnipsel einzufügen, ich kriege es einfach nicht hin). Die Fehlermeldung hatte ich mit ksnapshot ausgeschnitten und als png bzw. jpeg-Datei abgelegt bzw. in die Zwischenablage kopiert. Es gelingt mir aber einfach nicht, diese hier einzufügen. Vielleicht könnte jemand anders daraus schlauer werden?!

Grüße


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 20:04 
Offline

Registriert: 20.06.2007 10:56
Ich lade Bilder in eigenen Webspace hoch und füge dann die URL per Img oder URL in das Posting ein. Ich weiß grad nicht was die meisten anderen hier benutzen, vielleicht sowas wie Imageshack oder gar Dropbox? :)

Schau doch einfach mal in andere Postings welchen freien kostenlosen Service andere dafür nutzen.

Als kleiner Tip zu der Fehlermeldung -da taucht z.b. so eine Zeile auf wie:

Code:
/usr/bin/ld: note: 'inflate' is defined in DSO /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libz.so so try adding it to the linker command line


es wird also vorgeschlagen libz.so zuzufügen. Nimmt man dann einfach das Kürzel "lib" vorne sowie die Endung ".so" weg und daraus ergibt sich die Flage "-lz" bei dem ImportC. Also im Programm dann die Zeile:

Code:
ImportC "-lz" : EndImport


Aus "libm.so" wird dann eben "-lm" und so weiter :)


Zuletzt geändert von Ramihyn_ am 20.11.2011 20:11, insgesamt 1-mal geändert.

Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 20:09 
Offline
Benutzeravatar

Registriert: 08.09.2004 08:21
Wohnort: Porada Ninfu
@manke: http://abload.de

Grüße ... Kiffi

_________________
"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." - Martin Golding

PureBasic FAQ
PureBasic Projekthosting


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 21:17 
Offline

Registriert: 28.04.2007 03:04
Wohnort: Einhausen, Südhessen
Aha,

jetzt versuche ich es nocheinmal:

Fehlermeldung war:
[img][img]http://www.abload.de/img/fehler7ke0y.png[/img][/img]

Ich hoffe, jetzt kann jeder es aufrufen. Aber verstanden habe ich diese Meldung immer noch nicht. Auch ein
Code:
ImportC "-dl":EndImport

hat nichts geholfen, die Meldung bleibt.

Was jetzt?


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 21:20 
Offline

Registriert: 28.04.2007 03:04
Wohnort: Einhausen, Südhessen
Ups,

das wäre wohl noch besser gewesen, ich gelobe Besserung!

Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 20.11.2011 21:49 
Offline

Registriert: 20.06.2007 10:56
manke hat geschrieben:
Ich hoffe, jetzt kann jeder es aufrufen. Aber verstanden habe ich diese Meldung immer noch nicht. Auch ein
Code:
ImportC "-dl":EndImport

hat nichts geholfen, die Meldung bleibt.

Was jetzt?


Fehlt nur das "-l" davor - also
Code:
ImportC "-ldl" : EndImport
sollte dann funktionieren.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 21.11.2011 20:10 
Offline

Registriert: 28.04.2007 03:04
Wohnort: Einhausen, Südhessen
Hat leider auch nicht funktioniert. Die Fehlermeldung sieht jetzt so aus:

Bild

Jetzt habe ich ja schon etwas Übung im Fehlermeldungen hochladen.

Ich habe einfach ein "l" eingefügt hinter den Strich (oder muss noch irgendwo ein Leerzeichen rein?):

Code:
ImportC "-ldl":EndImport


Und außerdem, irgendetwas stimmt ja nicht, unter dem alten OpenSuse 11.4 lief ja auch schon alles mit Pb 4.6. Erstaunlicherweise laufen jetzt auch die meisten noch unter OpenSuse 11.4 erstellten Compilate nicht mehr, ein kleines Spiel läuft aber problemlos (lässt sich nur nicht mehr neu kompilieren). Einige Beispiele aus dem Examples Ordner laufen übrigens, z.B. das Canvasgadget.pb. Irgendwie müssen doch einige Bibliotheken unter dem neuen Suse nicht richtig installiert sein, obwohl Checkinstall.sh alles in Ordnung meldet.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: PB 4.6 Linkerfehler unter OpenSuse 12.1
BeitragVerfasst: 21.11.2011 20:46 
Offline

Registriert: 20.06.2007 10:56
manke hat geschrieben:
Hat leider auch nicht funktioniert. Die Fehlermeldung sieht jetzt so aus:

Bild


Hat doch funktioniert - das ist die nächste Fehlermeldung ;)

Nun vermisst er beim Linken ein Symbol aus der "libX11.so.6", also die nächste Import Zeile wäre dann:

Code:
ImportC "-lX11":EndImport


Das "-l" am Anfang ist eine Kommandozeilenoption und das "X11" ist dann der Library Name der zusätzlich gebunden werden soll.

manke hat geschrieben:
Und außerdem, irgendetwas stimmt ja nicht, unter dem alten OpenSuse 11.4 lief ja auch schon alles mit Pb 4.6. Erstaunlicherweise laufen jetzt auch die meisten noch unter OpenSuse 11.4 erstellten Compilate nicht mehr, ein kleines Spiel läuft aber problemlos (lässt sich nur nicht mehr neu kompilieren). Einige Beispiele aus dem Examples Ordner laufen übrigens, z.B. das Canvasgadget.pb. Irgendwie müssen doch einige Bibliotheken unter dem neuen Suse nicht richtig installiert sein, obwohl Checkinstall.sh alles in Ordnung meldet.


Klar ist da was oberfaul und eine Reihe ImportC Zeilen einzufügen ist auch nur eine Notlösung. Vielleicht hast Du aber auch eine falsche Option zur Kompilation angegeben? Z.B. eine GUI Anwendung versucht als "Console" oder ".so/Library" zu übersetzen? Vielleicht ist es aber auch ein PureBasic Bug beim Linken, da gibt es offenbar mehrere.

Benutzt Du bei der alten und neuen Suse Installation immer 32-bit oder 64-bit Versionen?


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 14 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye