Linker Fehler LNK2019 mit /MT
-
Hallo zusammen
ich habe ein c++ Projekt welches über Fortran Bibliotheken auf eine Fortran*.a Datei zugreift. Diese Fortran datei enthält Funktionsdefinitionene zur Erstellung von binären Dateien.
Ich erstelle die *.exe mit diesen 2 Kommandozeilen:(1) CL /MD /c test.cpp (2) LINK /LIBPATH:"C:\Programme\Intel\Compiler\11.1\048\lib\ia32"/out:test.exe
test.obj ds_md.a
So weit geht alles gut. Leider ist die erstellte Anwendung dynamisch mit msvcrt.lib verknüpft und läuft nur auf dem Rechner auf dem sie erstellt wurde.
Bei einer statischen Verknüpfung mit libcmt.lib mit /MT in (1) und ds_mt.a in (2), bekommen ich folgende Fehler:libirc.lib(tbk_backtrace.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SymInitialize@12" in Funktion "_tbk_trace_stack".
libirc.lib(tbk_backtrace.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SymCleanup@4" in Funktion "_tbk_trace_stack".
libirc.lib(tbk_backtrace.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__StackWalk@36" in Funktion "_tbk_trace_stack".
test.exe : fatal error LNK1120: 3 nicht aufgelöste externe Verweise.Ich verwende visual studio 2005 und den intel fortran compiler 11.1 mit windows 32 bits.
Über eure Hilfe würd ich mich sehr freuen.
-
Noch eine kurze Anmerkung:
Die libirc Bibliothek gehört zu dem IntelFortran Compiler. Hier gibt es auch eine libircmt Bibliothek mit der selben Größe.
Wenn ich diese Bibliothek statt dessen verwende:#pragma comment(lib, "libircmt.lib") #pragma comment(linker, "/NODEFAULTLIB:libirc.lib" )
Dann erhalte ich die selber Fehler mit libircmt.
-
#pragma comment(lib, "dbghelp.lib")
-
Jochen Kalmbach schrieb:
#pragma comment(lib, "dbghelp.lib")
und dann?
Ich habe diese Datei nicht..
PS: deine Internetseite hat mir schon öffters geholfen
-
Dann musst Du Dir das SDK besorgen wo diese Datei drin ist...
Ohne diese Lib wirst Du diese Funktionen nicht nutzen können.
-
Martin Richter schrieb:
Dann musst Du Dir das SDK besorgen wo diese Datei drin ist...
Ohne diese Lib wirst Du diese Funktionen nicht nutzen können.Aha! Endlich ein Spur!!
Könntest du mir vielleicht die Zusammenhänge hier erklären?
-
Warum hast Du die Datei nicht? Di e ist doch bei VC2008 immer dabei...
-
Jochen Kalmbach schrieb:
Warum hast Du die Datei nicht? Di e ist doch bei VC2008 immer dabei...
Ich hab die 2005 Express Edition...
-
Dann lies das
http://www.c-plusplus.net/forum/viewtopic-var-t-is-143003.htmlund installiert Dir das PSDK
http://www.microsoft.com/downloads/details.aspx?familyid=E15438AC-60BE-41BD-AA14-7F1E0F19CA0D&displaylang=en
-
Ich habe Windows Server 2003 R2 Platform SDK installiert.
Was kann denn die dbghelp.lib Bibliothek?
-
Debug-Infos auslesen...
Da musst Du die "libirc.lib" Fragenw, warum die das brauchen...
-
JUHU est funzt!