Danke für den Tipp mit "nm".
Aber es scheint alles in bester Ordnung zu sein:
$ nm -e libtag_static.a
main.o:
00000325 t _GLOBAL__I_readFile
U _Unwind_Resume
00000004 b _ZL4file
U _ZN6TagLib6StringD1Ev
U _ZN6TagLib7FileRefC1EPKcbNS_15AudioProperties9ReadStyleE
U _ZN6TagLib7FileRefC1Ev
U _ZN6TagLib7FileRefD1Ev
U _ZN6TagLib7FileRefaSERKS0_
U _ZNK6TagLib6String9toCStringEb
U _ZNK6TagLib7FileRef3tagEv
U _ZNK6TagLib7FileRef6isNullEv
U _ZNSt8ios_base4InitC1Ev
U _ZNSt8ios_base4InitD1Ev
00000000 b _ZStL8__ioinit
00000000 u _ZZ4itosiE3buf
U __cxa_atexit
U __dso_handle
U __gxx_personality_v0
00000149 T getAlbum
0000005f T getArtist
000001be T getGenre
000000d4 T getTitle
000002ac T getTrack
00000233 T getYear
00000000 T readFile
T steht für ein globales Symbol im Text-Segment, also müsste das eigentlich richtig sein.
Es wird wohl so sein das die lösbaren Bugs meist in der Folgeversion beseitigt sind. Aber nicht alles ist so schnell lösbar.
Wie weit MS mit dem Fehler "Microsoft incremental Linker funktioniert nicht mehr" bei VS 2010 Professional ist weiss ich nicht.
Denkbar wäre:
Es wurde als Bugfix mal angegangen -> Die Seiten bei MS durchsuchen.
Wenn es ein Servicepack gibt, eventuell wurde da was gefixt.
Oder bei der nächsten Version.
Oder noch nicht.
Oder gar nicht.
So kenne ich das von anderer Software.
Wie schon geschrieben: Wenn du mit dem alten DEV nicht klar kommst und sonst keine wichtigen Sache dafür sprechen das du den nutzt, dann vergiss den und nimm etwas moderneres.
Eine der aktuelleren IDE ist Code::Blocks 10.05. Bei deinen Kenntnissen mit dem Compiler laden und installieren.
Allgemein zu deinem Vorhaben: du hast dich wahrscheinlich irgend wo verheddert.
Wenn du den Quelltext hast, unter Windows mit der Maus auf deine IDE ziehen und schauen was du machen sollst damit du deinen Quelltext siehst und dann, wie schon geschrieben, im IDE-Menu nach Compilieren, Erstellen oder ähnlichem suchen. Dann Schauen ob im Menu auch noch Ausführen oder Run steht, wenn das Compilieren fehlerfrei geklappt hat.
Musst du den Quelltext erst erstellen, dann im Menu nach Projekt suchen und da deine gewünschten Einträge machen bis die Editorseite vor dir aufgeht und dann leg los.
Soweit eine Kurzfassung - je nach IDE sind Abweichungen möglich.
MfG f.-th.
super, vielen Dank.
ja das mit dem Trennen von .h und .cpp Dateien fände ich auch sinnvoll. Gibt es dafür eine Einstellung, dass er es bei neuen Klassen automatisch macht oder muss ich es immer selber verschieben?
Danke Rüdiger,das ganze scheint zu funktionieren.
Nun wollte ich den Pfad in /etc/ld.so.conf.d hinzufügen .
DOrt liegt aber schon eine Datei libc.conf, welche /usr/local/lib enthält.
Wieso ist das unzureichend? Oder was muss ich denn genau hinzufügen?
ich hab es hinbekommen, danke für den Rat
hab wahrscheinlich auch meinen Fehler gefunden, ich hab die Datei im Eifer des gefechts nicht xyz.cpp sonder xyz.c genannt und die Dateiendungen waren noch ausgeblendet.
Dummheit - danke!
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
Hallo,
also ich hab ein Problem bei einem kleinen OpenGL Programm.
Ich arbeite mit Code::Blocks 10.05 und habe wie in diversen Quellen beschrieben, bei den Linkereinstellungen
opengl32
glu32
glut32
hinzugefügt und beim MinGW im include-Ordner
GL/gl.h
GL/glu.h
GL/glut.h
sowie im lib-Ordner
libopengl32.a
libglu32.a
libglut32.a
hinzugefügt, sofern sie nicht schon da waren.
die opengl32.dll, glu32.dll, dlut32.dll sind ebenfalls im System32 und SysWoW64 Ordner vorhanden.
Dennoch bekomme ich Warnungen der Art
Warning: resolving ___glutInitWithExit by linking to ___glutInitWithExit@12
und Fehlermeldungen der Art
undefined reference to '_imp__glScalef'
was ich mir nicht so recht erklären kann.
Ich hab jetzt schon 3 Stunden nach den Fehlermeldungen gegooglet, die Hilfestellungen dort beziehen sich bis jetzt aber alle nur auf obige Dateien, die ich aber alle habe. Ich versteh einfach nicht wo das Problem ist, muss ich sonst noch irgendwelche Einstellungen machen?
Wäre für Hilfe wirklich dankbar, da ich mit meinem Latein am Ende bin.
Danke schonmal im Voraus
Hallo Stefan,
da scheint es unterschiedliche Strategien bei den verschiedenen Linkern zu geben, s.a.
http://stackoverflow.com/questions/4643192/why-im-not-getting-multiple-definition-error-from-the-g
Und der Linker ld (beim gcc) kennt wohl auch das Unterdrücken der Fehlermeldung mittels des "--allow-multiple-definition" Schalters: http://www.delorie.com/gnu/docs/binutils/ld_3.html
Aber beim MSVC kenne ich auch die "... is already defined in ..."-Fehlermeldung (und leider kein Flag zum Abschalten...).
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.