Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : Makefile und Windows?


Gast
2006-02-04, 14:12:25
Ich hab hier einen Sourcecode, MingW32 GCC Port inkl. make und eine Frage.

Ich arbeite unter Windows und der Quellcode ist eigentlich für Linux vorgesehen, wenn ich nun per Konsole in das Verzeichnis mit make wechsle, tippe ich:

make -f F:\src\makefile

ein. Egal, es erscheint immer die Meldung:

make: *** No rule to make target 'XYZ'

Was meint make genau mit 'rule' (Regel?) ? Es ist kein configure Script dabei, es befinden sich aber alle Libraries auf dem PC.

Muss ich evtl. make, gcc und die Makefile im selben Ordner haben bzw. die Compiler-Dateien wie gcc, make & Co ins System32 Verzeichnis tun, weil sich die Pfadangaben nicht so ganz vertragen?

Danke.

pajofego
2006-02-04, 15:49:48
Ich bin mir nicht sicher wie das ohne cygwin -ich mach soetwas immer nur mit cygwin - geht, aber mit MinGW musst du den mingw32-make.exe benutzen.

Gruß

pajofego

P.S.: du musst dir mal die Anleitung in der Readme lesen. Manchmal muss man eher "build" oder "install" schreiben.

Bietchiebatchie
2006-02-04, 17:24:33
eventuell ist das ganze auch nur ein Problem mit Groß/Kleinschreibung:
unter Windows ist es egal, ob man etwas klein oder groß schreibt, unter Linux jedoch nicht. Zumindest unter Cygwin ist es so, dass die Sachen aber immer als kleingeschrieben gespeichert werden, d.h. wenn da was Großgeschriebenes im Makefile steht kann es halt nicht ausgeführt werden, da Cygwin es nicht findet.
Ich würde einfach mal das Makefile anschauen (bzw. posten).
Anschauen geht am einfachsten mit emacs.

Gast
2006-02-04, 19:29:12
Ok, war doof von mir, vorhin den restlichen Teil der Meldung weggenommen zu haben.

Die Dateien make.exe und mingw32-make.exe sind bei meiner Installation identisch.

Ich habs nun so hinbekommen, dass ich das Verzeichnis in die Windows-PATH Variable gesetzt habe, sodass ich nun aus dem Verzeichnis von Makefile 'make' aufrufen kann.

Jetzt hab ich gesehen, dass dem Vorhaben eigentlich nur noch gas und ld, die fehlen nämlich, im Wege stehen.

zeckensack
2006-02-04, 19:31:52
Versuch's mal mit "make all".