2012-08-02 55 views
29

我是這方面的新手,只是想問如何使用C語言編寫一個makefile.am使用MinGW編譯器。我必須將所有文件保存在MinGW \ bin中嗎?因爲現在我的文件位於不同的目錄中。如何使用MinGW編譯makefile?

欣賞幫助。

+0

當然不是,你不應該把_anything_放在mingw \ bin中。你確切的問題是什麼? (即解釋什麼是你的失敗。) – Mat 2012-08-02 07:10:14

+1

如果你有一個Makefile.am,那麼我建議你閱讀更多關於[automake](http://www.gnu.org/software/automake/)和[autoconf]( http://www.gnu.org/software/autoconf/)。 – 2012-08-02 07:12:24

+0

好吧,我有一個C項目,我的主管讓我編譯。該項目包含makefile.in和makefile.in。我有0關於的知識。經過研究,我已經設法安裝MinGW編譯器。我還更改了變量環境和命令提示符中指向文件位置的目錄。現在,誰能告訴我如何編譯這個項目?真的很感謝。 – AAA 2012-08-02 08:15:33

回答

0

請了解automake和autoconf。

Makefile.am是由automake處理,以產生由製作爲了建立你的源代碼處理一個Makefile。

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

+0

這意味着我只能使用automake編譯文件? – AAA 2012-08-03 01:14:21

20

摘自http://www.mingw.org/wiki/FAQ

什麼是品牌和之間的區別的mingw32-做什麼呢?

的「原生」(即:MSVCRT依賴)製作的端口是缺乏一些功能,並已修改的功能,由於Win32上缺乏POSIX的。在MSYS發行版中還存在一個取決於MSYS運行時的make版本。這個端口的運行更多,因爲make有意操作,並且在執行過程中減少了麻煩。基於此,MinGW開發人員/維護人員/包裝人員決定最好重命名本地版本,以便「原生」版本和MSYS版本可以同時存在,而不會發生文件名衝突。

所以,尋找到C:\ MinGW的\ bin目錄,首先要知道是什麼做的可執行文件,已安裝(或的make.exe的mingw32-的make.exe)

使用的MinGW之前,您應該添加℃。 :\ MinGW的\ BIN;使用中提到的說明PATH環境變量在http://www.mingw.org/wiki/Getting_Started/

然後cd到你的目錄,其中你有makefile文件,並使用mingw32-make.exe makefile.in或者乾脆make.exe makefile.in嘗試(取決於用C可執行文件:\ MinGW的\ BIN)。

如果你想要一個基於GUI的解決方案,安裝DEVCPP IDE,然後再化妝。

+2

剛剛安裝了mingw,我沒有在bin文件夾中。 – ecoe 2015-02-10 22:22:34

6

你必須積極地選擇安裝MSYS得到的make.exe。因此,如果MinGW安裝正確,至少應該有(本機)mingw32-make.exe。如果你安裝了MSYS,你將會有make.exe(可能在MSYS子文件夾中)。

注意,許多項目需要首先創建一個makefile文件(例如,使用配置腳本或automake的.AM文件),它是這一步,需要MSYS或Cygwin的。讓你想知道他們爲什麼要麻煩分發本地製作。

一旦你的makefile文件,目前還不清楚,如果本機可執行文件要求不同的路徑分隔符比MSYS使(正斜槓VS反斜槓)。任何自動生成的makefile都可能具有unix風格的路徑,假設本地make可以處理這些路徑,編譯後的輸出應該是相同的。