我下载了一些演示,它们带有Makefile。win和一个Makefile.sgi。我如何在Windows中运行这些程序来编译演示?
当前回答
如果你安装Cygwin。确保在安装程序中选择Make。如果您有一个Makefile,那么可以运行以下命令。
make -f Makefile
https://cygwin.com/install.html
其他回答
我尝试了cygwin和gnuwin,并没有为我工作,我猜是因为makefile主要使用特定的linux代码。
它的工作原理是在Windows 10上使用Ubuntu Bash。如果你来自MAC,这就是一个奇迹,就像我的情况一样:
安装Ubuntu Bash: https://itsfoss.com/install-bash-on-windows/ 进入控制台后,要安装make,只需输入“make”,它就会给出下载说明。
附加功能:
在bash上启用复制/粘贴:在Windows Ubuntu上的bash上复制粘贴 在我的例子中,make名为Maven,所以我也必须安装它:https://askubuntu.com/questions/722993/unable-to-locate-package-maven 要访问windows文件系统C: drive,例如:"cd /mnt/ C /"
希望能有所帮助
所以如果你正在使用Vscode和Mingw,那么你应该首先确保Mingw的bin文件夹包含在环境路径中,最好将mingw32-make.exe更改为make,以简化任务,然后创建一个makefile 并在其中包含这个代码。
all:
gcc -o filename filename.c
./filename
然后保存makefile并打开Vscode Code终端并写入make。然后makefile将被执行。
以上这些我都试过了。帮助我的是:
下载mingw-get。 设置它。 向环境变量中添加如下代码:C:\MinGW\bin。 启动(!重要)git bash。电源外壳,开发人员vs cmd,系统cmd等没有帮助。 在命令行中输入mingw-get。 输入mingw-get后,安装mingw32-make。
完成了!现在您可以从包含Makefile的任何文件夹中使用make命令。
看看GnuWin的make(适用于windows),它为windows提供了一个本地端口(不需要像Cygwin那样的完整运行时环境)
如果你有winget,你可以像这样通过CLI安装:
winget install GnuWin32.Make
另外,请确保将安装路径添加到您的系统path:
C:\Program Files (x86)\GnuWin32\bin
如果您已经从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命令。
推荐文章
- 在Makefile中@:(at符号冒号)是什么意思?
- 在Sublime Text 2中使用Ctrl+D进行多个选择时,我如何跳过匹配?
- #定义WIN32_LEAN_AND_MEAN具体排除了什么?
- 最好的轻量级web服务器(只有静态内容)的Windows
- npm犯错!错误:EPERM:操作不允许,重命名
- 崇高的文本从命令行
- 如何保持Python脚本输出窗口打开?
- 使用.bat文件检查文件夹是否存在
- 我在哪里可以找到Mac OS X Lion的“make”程序?
- 如何查看Windows库(*.lib)的内容
- 在Windows中删除大文件夹最快的方法是什么?
- NPM卡住给出相同的错误EISDIR:对目录的非法操作,读取错误(本机)
- Windows 10环境变量太大
- 如何使用Windows命令行更改目录
- 使用g++编译多个.cpp和.h文件