2016-12-04 126 views
-1

我喜欢将Linux和Windows用于我的C和C++编码,我更喜欢使用命令行来编译我的程序。我可以在Linux上运行make,这很好。但是在Windows上,现在我正在使用类并且必须编译多个文件,我发现输入几个g ++命令来编译类和主目标文件是一件苦差事。CMD批处理文件或PowerShell脚本可以执行多个g ++命令吗?

我想知道是否有办法让CMD批处理文件或PowerShell脚本只执行一个接一个的命令?

事情是这样的:

g++ -c Area.cpp -o Area.o 
g++ -c Convert.cpp -o Convert.o 
g++ -c Calculate.cpp -o Calculate.o 
g++ -c multi_menu_functions.cpp -o multi_menu_functions.o 
g++ -c main.cpp -o main.o 
g++ -Wall main.o Area.o Calculate.o Convert.o multi_menu_functions.o -o main 

...死的东西简单和容易。

+0

您使用的标签注释说:“批处理文件是一个文本文件,其中包含由MS-DOS,IBM OS/2或Microsoft Windows系统上的命令解释程序执行的一系列命令。”但更常用的是使用正式的make文件。 –

+0

寻找继续使用“make”的选项:http://stackoverflow.com/questions/16755641/make-command-for-windows-possible-options – TonyB

+0

'g ++ Area.cpp Convert.cpp Calculate.cpp multi_menu_functions。 cpp main.cpp -std = C++ 11 -Wall -pedantic-errors -o main.exe'。或者只是使用'make'。使用g ++发布了一个make,并且有微软的'nmake'。或者使用微软的构建系统'msbuild'。或者Cmake。或者,只需将所有这些命令放入批处理文件即可。我没有看到问题。 –

回答

0

只需将这些命令写入扩展名为.bat的文件中即可启动该文件。您可以在执行批处理文件时通过以@echo off行开始文件来关闭输出命令。

或更好:只需获得windows的make并使用那个。

+0

我确实把这些命令放在.bat文件中,它们不会按原样运行。是否有特定的DOS关键字来执行g ++命令?我知道有几个窗口在那里,但我想知道你是否可以用.bat或powershell脚本来做到这一点。 – Quinn

+0

您是否收到错误消息? –

0

我想出了为什么g ++命令不能正常工作的问题:某种程度上,我使用的笔记本电脑没有授予我正确的权限。猜测我尝试了g ++。exe的完整路径名,并且它工作正常。我重新配置了一些东西,现在它可以与列出的命令一起工作。

在附注上;我确实得到了gnumake,minGW也开始工作。由于这些可以运行我的Linux makefile,我也会使用它们。

相关问题