Wegen C++0x nicht unbedingt, aber ich habe mir die neuere Version wegen OpenMP zugelegt.
Und stimmt, unter v3.4.2 kompiliert das ganze (mit 563 Warnungen ) und mit v4.2.1 ebenfalls. Und da letztere Version bereits OpenMP unterstützt, dürfte ein Downgrade vorerst die beste Lösung sein.
v4.2.1 erzeugt zwar vergleichsweise recht große Binaries, aber heutzutage ist das zum Glück nicht mehr so relevant.
Auchn dickes Danke an dich _matze ^^.
Hätt ich gewusst das ich hier so schnelle und kompetente Hilfe krieg hätt ich nie solange gegoogled xD.
Gruß Fussel
Hallo
Ich benutze unter windows eclipse C++, habe dazu den (Linker?) mingw.
Ich habe des öfteren Probleme mit eclipse wenn ich meine c++ komplieren will.
Momentan habe ich ein Programm 1:1 aus dem Lehrbuch abgeschrieben und erhalte beim kompilieren folgenden Fehler:
**** Build of configuration Default for project CreditCard2 ****
mingw32-make -f makefile all
g++ -o CreditCard2.exe CreditCard2.o
C:/Programme/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../../libmingw32.a(main.o)(.text+0x97):main.c: undefined reference to `WinMain@16'
mingw32-make: *** [CreditCard2.exe] Error 1
Ich hab gegoogelt und anscheinend gibt es öfters Probleme unter der kombination windows und wingw:
Z.B. hab ich gelesen:
"mittlerweile klappts, falls mal irgendwer die gleichen probleme hat, man muss in der reihenfolge
-lmingw32
-lSDLmain
-lSDL
(-lopengl32)
in verlinken".
(http://www.eclipseproject.de/modules.php?name=Forums&file=viewtopic&t=5383)
Aber ich habe keine Ahnung, wie das geht. Oder ob das hilft.
Einige haben auch geschrieben, dass der Linker ein win32 Fenster machen will, anstatt ein Konsolen-Dings.
Wo könnte der Fehler liegen
Falls das was hilft:
das Makefile schaut so aus:
CXXFLAGS = -O2 -g -Wall -fmessage-length=0
OBJS = CreditCard2.o
LIBS =
TARGET = CreditCard2.exe
$(TARGET): (OBJS)(OBJS)
(OBJS)(CXX) -o $(TARGET) $(OBJS) $(LIBS)
all: $(TARGET)
clean:
rm -f $(OBJS) $(TARGET)
Vielen Dank für die Hilfe
Gruss Nathan
Scorcher24 schrieb:
Ich möchte ja nicht den Klugscheisser spielen ( ich weiss, is zu spät ) aber ich finde BUILD-Kommandos innerhalb des Source-Codes... mhh, unlegant.
Warum ist das so designed? Wenn du sowas schon baust, warum nimmst du nicht ein Makefile als Eingabe für die BUILD-Kommandos?
Ich hoffe die Frage ist mal am Rande gestattet...
rya.
Weil ich komplett auf build-files verzichte (deshalb baue ich mir auch mein eigenens, automatisiertes Build-system) und kein auto-linking eh' bei vielen einzel Bibliotheken (z.B. boost) auf dauer einfach nur nervig ist.
Jochen Kalmbach schrieb:
Hast Du vielleicht bei *mehreren* cpp-Datein das pch aktiviert???
Jup, ich Idiot hab die PCH global aktiviert anstatt nur für eine Datei. Hat wohl ne zeitlang funktioniert und jetzt hats halt "geknallt"...
Danke Jochen :).
rya.
All die Build-Schritte kannst du ja in ein Skript/Programm schreiben und dann dieses Programm als Compiler in VS einbinden. Schau dir zum Beispiel mal ein Guide an wie man QT in VS integriert in der nicht-kommerziellen Version (d.h. die Express-Variante).
Oder schreibe ein Makefile das deine Build-Prozedur erledigt und erstelle ein Makefile-Projekt in VS.
_matze schrieb:
Ein Upgrade kommt auch nicht in Frage?
Naja weiß nicht, bin doch soweit überzeugt wurden, dass ich mir grad die 2008er Prof als Trial ziehe.
Ich hab von dem Upgrade usw. keine Ahnung, wie würde das denn genau funktionieren ??
Die 2008er werd ich mir früher oder später bestimmt ansehn müssen.
@Bulli:
Da hast du wohl Recht.
Wenn ich Zeit hab, werd ich mich mal darum kümmern.
EDIT:
Sind ja 90 Tage zum Testen hab ich grad gesehen.
Das ist ja schonmal besser.