MinGW a.d. Console

Hallo Leute

Ich kriegte von MinGW eine „undefined reference“ und habe dann so versucht, zu linken (*.bat):

cls
D:/mingw/bin/mingw32-c++.exe -l libwinmm.a \
 D:/cpps/projekt/main.cpp

Nützt aber nichts.
Weiss jemand eine bessere Methode?
Weiss jemand eine Referenz über die ganzen -l etc?

mfG
Martin

PS: Hilfe ist bei MinGW nicht dabei, und mit Sucher findet man 20.000 unnütze Seiten.

Hi Martin,

D:/mingw/bin/mingw32-c++.exe -l libwinmm.a
D:/cpps/projekt/main.cpp

systemspezifische Erweiterungen der Librarynamen sind normalerweise nicht Bestandteil der -l Option. Im Normalfall sollte das

-l winmm

heissen, ggf. noch mit einer zusaetzlichen (vorangestellten) „-L pfad“ Option.

Gruss
E.

Hallo E

-l winmm

Danke sehr.

heissen, ggf. noch mit einer zusaetzlichen (vorangestellten)
„-L pfad“ Option.

Ich schreibe also -L und den Pfad, wo die Libs zu finden sind?
Geht das dann ebenso mit „-I include-Pfad“?

mfG
Martin

Hi,

Ich schreibe also -L und den Pfad, wo die Libs zu finden sind?

ja, mit einem betriebssystem abhaengigen Trenner sofern mehrere Pfade genannte werden, oft : oder ;

Geht das dann ebenso mit „-I include-Pfad“?

ja, dto

Gruss
E.

danke dir (leer)
.

Hallo Leute!

Jetzt klappt es, schreibe das nur informativ. Das -L und auch die nicht formatierten Libs nimmt er nicht, aber das hier:

rem libDrin = kernel32 winmm winspool gdi32 comdlg32
rem libWeitere = gdiplus user32 advapi32 shell32 ole32 
 oleaut32 uuid odbc32 odbccp32

cls
D:/mingw/bin/mingw32-c++.exe main.cpp -w 
-I d:/c++/include 
-l kernel32 
D:/mingw/lib/libwinmm.a 
D:/mingw/lib/libwinspool.a 
D:/mingw/lib/libgdi32.a 
D:/mingw/lib/libcomdlg32.a

(natürlich in einer Zeile)

Danke nochmal!
lG
Martin

Hallo Leute

mit den Tipps von hier:
http://www.mingw.org/wiki/HOWTO_Specify_the_Location…
hat sich herausgestellt, dass ich auch sowas machen kann:

cls
del a
D:/mingw/bin/mingw32-c++.exe main.cpp -w -L../lib -lkernel32 -lwinmm -lwinspool -lgdi32 -lcomdlg32
a

Der Witz ist also, dass man -l schreibt und dann gleich (ohne Leerzeichen) den Dateinamen, für jeden das -l extra, dann nimmt er auch die unformatierten Dateinamen.
Ich habe das -L auch noch weggelassen, und ging genauso. Das war also wohl kein Pfad-Problem.

mfG
Martin