1Danke
ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
231
231
EMPFEHLEN
-
18.08.11 14:41 #1
Hallo zusammen,
ich bin seit gestern stolzer Besitzer des VS 2010 Prof.
und versuche nun seit heute morgen, eines meiner Programme ans laufen zu bekommen. Nachdem ich die üblichen Compilerfehler allesamt beseitigt habe, bleibe ich nun am genannten Linkerfehler LNK2005 hängen.
Code cpp:1 2 3 4 5 6 7
1> Durchsuchen von C:\Programme\Microsoft Visual Studio 10.0\VC\lib\LIBCMT.lib: ... 1> Durchsuchen von C:\Programme\Microsoft Visual Studio 10.0\VC\atlmfc\lib\nafxcw.lib: 1>nafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (****2@YAPAXI@Z) ist bereits in LIBCMT.lib(new.obj) definiert. 1>nafxcw.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (****3@YAXPAX@Z) ist bereits in LIBCMT.lib(delete.obj) definiert. 1>nafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new[](unsigned int)" (****_U@YAPAXI@Z) ist bereits in LIBCMT.lib(new2.obj) definiert. 1>nafxcw.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete[](void *)" (****_V@YAXPAX@Z) ist bereits in LIBCMT.lib(delete2.obj) definiert.
Mittlerweile habe ich einige Dutzend Webseiten ohne wirklichen Erfolg durchforstet.
Es liegt allerdings inzwischen der Verdacht nahe, dass die Reihenfolge, in der diese Dateien durchsucht werden, wohl nicht unerheblich sein könnte (vgl. http://msdn.microsoft.com/query/dev1...PUT%29&rd=true)
Ein Kollege arbeitet schon einige Wochen länger mit dem VS2010 und hat die Probleme nicht. Spannenderweise werden bei ihm die beiden Libs in umgekehrter Reihenfolge durchsucht. Wir haben mittlerweile Stück für Stück die Einträge in der Eigenschaftsseite verglichen und auch dort keine (relevanten) Unterschiede feststellen können.
(a) Wie kann erreichen, dass zuerst "nafxcw.lib" und danach "libcmt.lib" durchsucht wird?
(b) Hat irgendwer noch einen anderen Tipp für mich ?
Danke und Gruß
Klaus
EDIT:
Ich vergaß zu erwähnen, dass dieses Problem NUR beim Erstellen der Releaseversion auftritt. Die Debugversion läßt sich erstellen !Geändert von vfl_freak (18.08.11 um 14:54 Uhr)
Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
-
18.08.11 15:23 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Du mußt alle deine Bibliotheken und Programme mit der gleichen Laufzeitbibliothek übersetzen.
Es gibt 4 für C und 4 für C++:
- Debug DLL
- DLL
- Debug Statisch
- Statisch
Schau in die Projekteinstellungen unter C/C++ Code Generierung -> Laufzeitbibliothek
GrußGeändert von deepthroat (18.08.11 um 15:25 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
18.08.11 15:51 #3
Hallo deepthroat,
erstmal Danke für die schnelle Antwort
Ich verwende in beiden Fällen die statische Variante, also /MT resp. /MTd.
Bin jetzt aber gerade beim erneuten lesen (hier: http://support.microsoft.com/kb/148652/en-us) zufällig über die Lösung gestolpert.
Es ist wohl wirklich entscheidend, die MFC-Libs vor den CRT's zu linken und für die beiden o. g. Libs erreicht man das, indem in den Projekteigenschaften und "Linker/Eingabe" beide ignoriert (dritte Zeile) und dann in der ersten Zeile bei "zusätzliche Abhängigkeiten" in der richtigen Reihenfolge einträgt .....
Nun ja, compilieren kann ist jetzt - nur noch nicht laufen lassen, da sofort ein Runtime-Error auftritt ... dann werde ich mich mal zuerst mit dem Debugger beschäftigen müssen
Ein Sch... ist das
Nochmals Danke und Gruß
KlausGeändert von vfl_freak (18.08.11 um 15:52 Uhr) Grund: Farbcode eingefügt, um es anderen Suchenden ggf. zu erleichtern :-)
Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
Ähnliche Themen
-
VS2010 Exception während des Debuggens werfen
Von Akeshihiro im Forum .NET CaféAntworten: 4Letzter Beitrag: 13.07.11, 13:35 -
Managed Code mit VS2010
Von Perdan im Forum C/C++Antworten: 0Letzter Beitrag: 15.06.11, 16:33 -
Zugriff auf Funktionen der Dialog-Klasse (C++/MFC/VS2010)
Von lmeinel im Forum VisualStudio & MFCAntworten: 2Letzter Beitrag: 01.04.11, 16:10 -
VS2010 WebAnwendung erstellen und einrichten
Von flowpow im Forum .NET Web und KommunikationAntworten: 1Letzter Beitrag: 26.01.11, 23:27 -
MFC .exe sehr groß mit VS2010
Von thekiller im Forum C/C++Antworten: 4Letzter Beitrag: 19.08.10, 11:42





Zitieren
Login






