unbekannter fehler



  • wat soll ich da machen?



  • Hab den Eindruck, Du versuchst ein nicht von Dir selbstgeschriebener Quellcode auf Deinem System zum Laufen zu bringen. Und bist dann bei den ganzen Compiler- und Linker-Warnungen erstmal erschlagen?

    In diesem Fall von mir eine Hilfe zur Selbsthilfe auf zweierlei Art und Weise:
    a) Betrachte erstmal immer nur die erste Fehlermeldung. Und versuche die Ursache für diese erste Fehlermeldung zu ergründen. Diese Ursache beseitigen, neuer Compiler- und Linker-Lauf. Und dann knöpfst Du Dir die (neue bzw. verbleibende) erste Fehlermeldung ab. Solange nacheinander bis Du keine Fehlermeldungen mehr hast.

    Oder:
    b) Reduziere den ganzen Quellcode erstmal auf den allernötigsten Rumpf. D.h. erstmal nur noch WinMain() aber ohne ohne Inhalt. Sind da noch Fehlermeldungen?
    Nachdem die Fehlermeldungen beseitigt sind, baust Du schrittweise die Funktionen in WinMain() wieder ein. usw. und so fort. Irgendwann hast Du wieder den kompletten Quellcode aber diesmal ohne die Compiler- und Linker Fehlermeldungen!

    Beispiel:

    Objects/MingW/../../Main.h:2:14: map: No such file or directory
    Objects/MingW/../../Main.h:3:17: string: No such file or directory

    Alleine diese beiden Fehlermeldungen deuten darauf hin daß eher der Pfad (also "Objects/MingW/../../") und nicht der Dateiname stimmt -> also den Pfad korrigieren.

    Zu diesem speziellen Thema meine persönliche Vermutung: Ein Vorhandensein von relativen Rückwärts-Pfadangaben wie "../" deutet eher auf ein großes bis riesengroßes Projekt hin! -> d.h. Du mußt wissen was Du tust und was Dein Projekt an Files und Modulen so alles braucht!!!

    Martin



  • Der code ist von mir. das seltsamme, bis neulichhat er ja geklappt. Und nun nicht mehr. So groß ist das projekt auch garnicht. Eigentlich nur die dateien von Oben. Pfad ist so lang, weil das ganze in nem unterordner von nem unterordner von nem ordner ist^^

    aja, den tip von ganz oben hab ich versucht( also die #defines auslagern) hat nix gebracht. als ide verwende ich die Borland TurboC++ die müsste dat abe wohl auch können...

    ps: wenn ich map.h includiere, bekomme ich noch diesen fehler:
    32:2 D:\Programme\Dev-Cpp\include\c++\3.4.2\backward\backward_warning.h #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.



  • ach kommt. ijemand wird doch wohl ne antwort wissen. hab auch schon die include pfade gechekt. die stimmen auch.



  • Hast du gdi32.lib drin? Also von wegen der undefined reference's ...
    Naja du solltest den Compiler mal wechseln ^^ Oder mach einfach mal nen kompletten rebuild ... die Header (also die vom Standard) müssen selbstverständlich ohne .h sein. Wie der Compiler dir auch korrekterweise mitgeteilt hat.



  • ich probiers mal aus.( wegen dem compiler: ich habs schon mit wx-Devcpp und Borland Turbo c++2006 versucht...)

    edit: ein paar fehler sind weg...
    der neue compilierlog:

    Compiler: Default GCC compiler
    Building Makefile: "C:\Dokumente und Einstellungen\Martin\Desktop\Vokabeltrainer2.0\new2\Makefile.win"
    Führt make... aus
    mingw32-make.exe -f "C:\Dokumente und Einstellungen\Martin\Desktop\Vokabeltrainer2.0\new2\Makefile.win" all
    g++.exe -c Main.cpp -o ../new2/Main.o -I"D:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/backward" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/mingw32" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2" -I"D:/Programme/Dev-Cpp/include" -I"D:/Programme/Dev-Cpp/" -I"D:/Programme/Dev-Cpp/include/common/wx/msw" -I"D:/Programme/Dev-Cpp/include/common/wx/generic" -I"D:/Programme/Dev-Cpp/include/common/wx/fl" -I"D:/Programme/Dev-Cpp/include/common/wx/gizmos" -I"D:/Programme/Dev-Cpp/include/common/wx/html" -I"D:/Programme/Dev-Cpp/include/common/wx/mmedia" -I"D:/Programme/Dev-Cpp/include/common/wx/net" -I"D:/Programme/Dev-Cpp/include/common/wx/ogl" -I"D:/Programme/Dev-Cpp/include/common/wx/plot" -I"D:/Programme/Dev-Cpp/include/common/wx/protocol" -I"D:/Programme/Dev-Cpp/include/common/wx/stc" -I"D:/Programme/Dev-Cpp/include/common/wx/svg" -I"D:/Programme/Dev-Cpp/include/common/wx/xml" -I"D:/Programme/Dev-Cpp/include/common/wx/xrc" -I"D:/Programme/Dev-Cpp/include/common/wx" -I"D:/Programme/Dev-Cpp/include/common" -I"D:/Dev-Cpp/include"

    g++.exe ../new2/Main.o Projekt1_private.res -o "Projekt1.exe" -L"D:/Programme/Dev-Cpp/Lib" -L"D:/Dev-Cpp/lib" -L"D:/Dev-Cpp/bin"

    ../new2/Main.o:Main.cpp:(.text+0x682): undefined reference to SetBkColor@8' ../new2/Main.o:Main.cpp:(.text+0x6b3): undefined reference toSetBkMode@8'
    ../new2/Main.o:Main.cpp:(.text+0x6d4): undefined reference to SetBkColor@8' ../new2/Main.o:Main.cpp:(.text+0x714): undefined reference toSetBkColor@8'
    ../new2/Main.o:Main.cpp:(.text+0x759): undefined reference to SetBkColor@8' ../new2/Main.o:Main.cpp:(.text+0x778): undefined reference toCreateSolidBrush@4'
    ../new2/Main.o:Main.cpp:(.text+0x98e): undefined reference to SetBkMode@8' ../new2/Main.o:Main.cpp:(.text+0x9be): undefined reference toTextOutA@20'
    ../new2/Main.o:Main.cpp:(.text+0x9ee): undefined reference to TextOutA@20' ../new2/Main.o:Main.cpp:(.text+0xa2d): undefined reference toTextOutA@20'
    ../new2/Main.o:Main.cpp:(.text+0xa68): undefined reference to TextOutA@20' ../new2/Main.o:Main.cpp:(.text+0xa9b): undefined reference toDeleteObject@4'
    collect2: ld returned 1 exit status

    mingw32-make.exe: *** [Projekt1.exe] Error 1

    Ausführung beendet



  • Laut http://msdn2.microsoft.com/en-us/library/ms532387.aspx sollten

    ../new2/Main.o:Main.cpp:(.text+0x778): undefined reference to `CreateSolidBrush@4'

    nicht auftreten ... wenn du gdi32.lib, wie ich es dir gesagt habe, eingebunden hast.
    Das selbe gilt für die restlichen undefinierten Referenzen ...



  • mal sehen, ob ich das hinbekomme.^^



  • hab die jetzt hinugefügt, aber jetzt findet er die map und die string wieder nicht... wenn ich die rausmache gibts noch diesen fehler:

    Compiler: Default GCC compiler
    Building Makefile: "C:\Dokumente und Einstellungen\Martin\Desktop\Vokabeltrainer2.0\new2\Makefile.win"
    Führt make... aus
    mingw32-make.exe -f "C:\Dokumente und Einstellungen\Martin\Desktop\Vokabeltrainer2.0\new2\Makefile.win" all
    g++.exe -c Main.cpp -o ../new2/Main.o -I"D:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/backward" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/mingw32" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2" -I"D:/Programme/Dev-Cpp/include" -I"D:/Programme/Dev-Cpp/" -I"D:/Programme/Dev-Cpp/include/common/wx/msw" -I"D:/Programme/Dev-Cpp/include/common/wx/generic" -I"D:/Programme/Dev-Cpp/include/common/wx/fl" -I"D:/Programme/Dev-Cpp/include/common/wx/gizmos" -I"D:/Programme/Dev-Cpp/include/common/wx/html" -I"D:/Programme/Dev-Cpp/include/common/wx/mmedia" -I"D:/Programme/Dev-Cpp/include/common/wx/net" -I"D:/Programme/Dev-Cpp/include/common/wx/ogl" -I"D:/Programme/Dev-Cpp/include/common/wx/plot" -I"D:/Programme/Dev-Cpp/include/common/wx/protocol" -I"D:/Programme/Dev-Cpp/include/common/wx/stc" -I"D:/Programme/Dev-Cpp/include/common/wx/svg" -I"D:/Programme/Dev-Cpp/include/common/wx/xml" -I"D:/Programme/Dev-Cpp/include/common/wx/xrc" -I"D:/Programme/Dev-Cpp/include/common/wx" -I"D:/Programme/Dev-Cpp/include/common" -I"D:/Dev-Cpp/include"

    g++.exe ../new2/Main.o Projekt1_private.res -o "Projekt1.exe" -L"D:/Programme/Dev-Cpp/Lib" -L"D:/Dev-Cpp/lib" -L"D:/Dev-Cpp/bin" - gdi32.lib

    g++.exe: gdi32.lib: No such file or directory
    g++.exe: -E required when input is from standard input

    mingw32-make.exe: *** [Projekt1.exe] Error 1

    Ausführung beendet



  • Leute, es is gelöst. ich hab vergessen in der Rsrc.rc das #include2main.h" rauszunehmen. jetzt kompiliert borland fehlerfrei.^^


Anmelden zum Antworten