it-swarm.com.de

Wie kompiliere ich das Makefile mit MinGW?

Ich bin neu bei diesem Thema. Ich wollte nur fragen, wie man ein makefile.am mit MinGW-Compiler in C-Sprache kompiliert. Muss ich alle meine Dateien in MinGW\bin speichern? weil gerade jetzt meine Datei in einem anderen Verzeichnis liegt.

Schätzen Sie die Hilfe.

36
AAA

Auszug aus http://www.mingw.org/wiki/FAQ :

Was ist der Unterschied zwischen make und mingw32-make? 

Der "native" (d. H .: MSVCRT-abhängige) Port von make weist einige Funktionen auf und hat aufgrund des Fehlens von POSIX unter Win32 eine geänderte Funktionalität. Es gibt auch eine Version von make in der MSYS-Distribution, die von der MSYS-Laufzeit abhängig ist. Dieser Port arbeitet mehr, da make für den Betrieb gedacht war, und macht während der Ausführung weniger Kopfschmerzen. Darauf basierend entschieden die MinGW-Entwickler/Betreuer/Paketierer, dass es am besten ist, die native Version umzubenennen, sodass sowohl die "native" Version als auch die MSYS-Version gleichzeitig ohne Dateinamenskollision vorhanden sein können.

Schauen Sie sich das Verzeichnis C:\MinGW\bin an und stellen Sie zunächst sicher, welche ausführbare Datei make installiert hat. (Make.exe oder mingw32-make.exe)

Bevor Sie MinGW verwenden, sollten Sie C:\MinGW\bin hinzufügen. an die Umgebungsvariable PATH mit den Anweisungen unter http://www.mingw.org/wiki/Getting_Started/

Dann cd in Ihr Verzeichnis, wo Sie das Makefile haben, und versuchen Sie es mit mingw32-make.exe makefile.in oder einfach make.exe makefile.in (abhängig von den ausführbaren Dateien in C:\MinGW\bin).

Wenn Sie eine GUI-basierte Lösung wünschen, installieren Sie DevCPP IDE und erstellen Sie es erneut.

29
askmish

Sie müssen aktiv MSYS installieren, um die make.exe zu erhalten. Sie sollten also immer mindestens (das native) mingw32-make.exe haben, wenn MinGW ordnungsgemäß installiert wurde. Wenn Sie MSYS installiert haben, haben Sie make.exe (wahrscheinlich im MSYS-Unterordner).

Beachten Sie, dass für viele Projekte zunächst ein Makefile erstellt werden muss (z. B. mithilfe eines Konfigurationsskripts oder einer .am-Datei), und für diesen Schritt sind MSYS oder cygwin erforderlich. Sie wundern sich, warum sie überhaupt die heimische Marke vertreiben wollten.

Sobald Sie das Makefile haben, ist es unklar, ob für die native ausführbare Datei ein anderes Pfadtrennzeichen als für das MSYS erforderlich ist (Schrägstriche vs. Schrägstriche). Jedes automatisch generierte Makefile hat wahrscheinlich Pfade im Unix-Stil. Vorausgesetzt, das native Make kann mit diesen umgehen, sollte die kompilierte Ausgabe gleich sein.

8
jiggunjer

Informieren Sie sich über automake und autoconf.

Makefile.am wird von automake verarbeitet, um ein Makefile zu erstellen, das von make verarbeitet wird, um Ihre Quellen zu erstellen.

http://www.gnu.org/software/automake/

0
lu_zero