如何使用MinGW编译makefile?

AAA*_*AAA 45 c compiler-construction mingw makefile

我是新手,想知道如何使用C语言中的MinGW编译器编译makefile.am.我是否必须将所有文件保存在MinGW\bin中?因为现在我的文件在不同的目录中.

感谢帮助.

ask*_*ish 35

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

make和mingw32-make有什么区别?

"本机"(即:MSVCRT依赖)make端口缺少某些功能,并且由于Win32上缺少POSIX而具有修改的功能.MSYS发行版中还存在一个依赖于MSYS运行时的make版本.该端口的操作更多,因为make旨在操作并且在执行期间减少了麻烦.基于此,MinGW开发人员/维护人员/打包者决定最好重命名本机版本,以便"本机"版本和MSYS版本可以同时存在而不会发生文件名冲突.

所以,看看C:\ MinGW\bin目录,首先确定是什么使得可执行文件,你安装了吗.(make.exe或mingw32-make.exe)

在使用MinGW之前,你应该添加C:\ MinGW\bin; 使用http://www.mingw.org/wiki/Getting_Started/中提到的说明访问 PATH环境变量

然后cd到您的目录,在那里您有makefile并尝试使用mingw32-make.exe makefile.in或简单make.exe makefile.in(取决于C:\ MinGW\bin中的可执行文件).

如果您需要基于GUI的解决方案,请安装DevCPP IDE然后重新制作.

  • 刚刚安装了mingw,我既没有在bin文件夹中. (10认同)
  • `mingw32-make`已经存在多年了!MinGW回购URL已过时和过时,浏览时一团糟,它们只是留下了多年未使用的旧存储库和URL。意识到! (6认同)
  • 该常见问题解答链接对我不起作用,所以我使用了 https://sourceforge.net/p/mingw-w64/wiki2/FAQ/ (2认同)

jig*_*jer 10

您必须主动选择安装MSYS才能获取make.exe.所以如果MinGW安装正确,你应该至少(本机)mingw32-make.exe.如果您安装了MSYS,您将拥有make.exe(可能在MSYS子文件夹中).

请注意,许多项目需要首先创建一个makefile(例如使用configure脚本或automake .am文件),这一步需要MSYS或cygwin.让你想知道为什么他们打算分发本地制作.

一旦你有了makefile,就不清楚本机可执行文件是否需要一个与MSYS make不同的路径分隔符(正斜杠与反斜杠).任何自动生成的makefile都可能有unix样式的路径,假设本机make可以处理那些,编译的输出应该是相同的.


小智 7

我的 C:\MinGW\bin 中的 bin 中有 MinGW 和 mingw32-make.exe 。同样,我将 bin 路径添加到我的 Windows 路径中。之后我将其名称更改为 make.exe 。现在我可以在我的 Makefile 方向中编写命令“make”并像 Linux 一样执行我的 Makefile。


小智 -1

请了解 automake 和 autoconf。

Makefile.am 由 automake 处理以生成 Makefile,该文件由 make 处理以构建源代码。

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

  • 该链接没有任何信息可以帮助解决用户的问题而无需进行大量挖掘。 (2认同)