我下载了一些演示,它们带有Makefile。win和一个Makefile.sgi。我如何在Windows中运行这些程序来编译演示?


当前回答

如果您有Visual Studio,从开始菜单运行Visual Studio命令提示符,切换到包含Makefile的目录。赢得并输入以下内容:

nmake -f Makefile.win

你也可以使用普通的命令提示符并运行vsvars32.bat (c:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools for VS2008)。这将设置运行nmake和查找编译器工具的环境。

其他回答

以上这些我都试过了。帮助我的是:

下载mingw-get。 设置它。 向环境变量中添加如下代码:C:\MinGW\bin。 启动(!重要)git bash。电源外壳,开发人员vs cmd,系统cmd等没有帮助。 在命令行中输入mingw-get。 输入mingw-get后,安装mingw32-make。

完成了!现在您可以从包含Makefile的任何文件夹中使用make命令。

我假设你添加了mingw32/bin被添加到环境变量中,否则请添加它,我假设它是gcc编译器,你有mingw安装程序。

第一步:从mingw安装程序下载mingw32-make.exe,或先检查mingw/bin文件夹是否存在mingw32-make.exe,否则安装,重命名为make.exe。

将其重命名为make.exe后,只需在makefile所在的目录中运行此命令。您可以直接以mingw32-make的形式运行它,而不是重命名它。

毕竟,命令只是一个exe文件或软件,我们用它的名字来执行软件,我们称它为命令。

下面是运行Makefile的快速而临时的方法

下载make from SourceForge: gnuwin32 安装它 进入安装文件夹

C:\Program Files (x86)\GnuWin32\bin

将bin中的所有文件复制到包含Makefile的文件夹中

libintl3.dll make.exe

在包含Makefile的文件夹中打开cmd(你可以用右键点击shift键)并运行

make.exe

完成了。

此外,您还可以在命令后添加参数,例如

做出.exe区分

如果您已经从MSYS2安装了Windows GNU编译器(MinGW),那么make命令将作为wingw32-make预安装。始终使用正确的make命令匹配cmake makefile生成。混合这些会产生问题。

使用MinGW make命令生成MinGW makefile

使用VS等效的make命令生成Visual Studio生成文件

只要你有源代码,这总是可能的。只需删除旧的构建目录,并通过在cmake中指定正确的参数重新开始。

mkdir build
cd build
cmake -G "MinGW MakeFiles" path/to/src/whereCMakeLists.txtInstructionsAre   
mingw32-make     
myProject.exe   # RUN

我在编译过程中遇到过多个make命令交互的问题。为了防止这种情况,只需编辑/删除导致不同make命令的环境变量。例如,为了防止与mingw冲突,只保留C:\msys64\mingw64\bin,而删除C:\msys64\usr\bin。另一个路径包含msys make,正如我所说,在编译过程中你不希望组合make命令。

所以如果你正在使用Vscode和Mingw,那么你应该首先确保Mingw的bin文件夹包含在环境路径中,最好将mingw32-make.exe更改为make,以简化任务,然后创建一个makefile 并在其中包含这个代码。

all:
    gcc -o filename filename.c
    ./filename

然后保存makefile并打开Vscode Code终端并写入make。然后makefile将被执行。