在Windows 7中如何编译C程序?

36

我正在寻找在Windows 7上编译C程序的免费工具。过去我一直在Ubuntu上使用gcc编译C代码。那么,在Windows 7上如何编译C代码呢?请教一下。


不要费心投票以重新开放此内容。这是关闭原因中所概述的问题的一个生动例子(还有一个 - 快速过时)。 - ivan_pozdeev
6个回答

37

MinGW 使用了一个相当老的GCC版本(我相信是3.4.5),并且已经有一段时间没有更新了。如果您已经熟悉 GCC 工具集并且只是想尝试在 Windows 编程中入门,那么这可能是一个不错的选择。有许多优秀的集成开发环境可供使用该编译器。

编辑:显然我说错了;这就是我对自己很少了解的东西进行谈论的后果。Tauran 指出有一个项目旨在为 MinGW 工具包提供当前版本的 GCC。您可以从他们的网站下载。


但是,我不确定是否能将其推荐给专业的 Windows 开发人员。如果您不是一个理想化的粉丝,无法容忍使用 Microsoft 软件的概念,我强烈建议您调查一下 Visual Studio,它附带了 Microsoft 的 C / C++ 编译器。免费下载Express 版本(其中包括所有付费版本的相同编译器)。除了编译器,Visual Studio 还提供了一个一流的集成开发环境,使开发特定于 Windows 的应用程序变得更加容易。是的,批评者会抱怨它不完全符合标准,但这就是编写 Windows 应用程序的世界。一旦包括 windows.h,它们就永远不可能真正可移植,因此大部分理想化的奉献最终只会浪费时间。


1
@Mohd:我只是在解释两个选项。我对MinGW一窍不通!说实话,我自己甚至都不使用它。我链接的网站上有大部分你需要的信息。如果你正在寻找一个好的IDE,可以尝试Code::Blocks。但任何文本编辑器(如Notepad++Programmer's Notepad)都能完成工作。 - Cody Gray
1
@Mohd:从命令行中运行编译器,就像在Ubuntu中一样。如果您是Windows的新手,可以通过在“开始”菜单的搜索框中键入“cmd”,然后按Enter键来进入命令行。大多数事情应该与Ubuntu上的GCC一样工作。请参阅MinGW入门FAQ首次用户编译应用程序指南 - Cody Gray
@Cody:没关系,虽然慢但它仍在运行。我想问一下,如何编译Perl代码?它能在MinGW上运行吗? - Mohd Isa
不是这样的,你已经可以获得带有gcc 4.6的Mingw了!例如:http://mingw-w64.sourceforge.net/ - tauran
3
@tauran:我对你的口水战不感兴趣。如果你想知道区别,请开一个新问题。或者,发表你自己的答案并陈述你的观点。 - Cody Gray
显示剩余17条评论

10

我曾尝试使用VC++ 2010编译C文件,但遇到了困难。一直出现错误LINK : fatal error LNK1104: cannot open file 'MSVCRT.lib'。即使在谷歌上搜索也无法轻易解决- 尝试修复问题只会导致其他错误。最终我放弃了并安装了Dev C ++,它使用MinGW编译器(我使用的是XP系统)。 - AbdullahC
@Hippo:我猜你只需要告诉链接器在哪里找到“MSVCRT.lib”就可以了。它随Visual Studio的安装捆绑在一起,但是因为它的位置不在你的“LIBPATH”中,所以在命令行下不能直接使用。请参考这个问题的答案。 - Cody Gray
@Cody Gray:谢谢你的帮助回复。我在使用IDE时遇到了这个问题。查看C:\Program Files\Microsoft Visual Studio 10.0\VC\lib目录,我发现.lib文件丢失了,但是Google Desktop的缓存中显示它们。我将重新安装并告诉你是否有效 :) - AbdullahC
@Hippo:是的,我会先尝试重新安装。如果这不能解决问题,你可能需要下载Windows SDK。你可以在这里获取最新版本。它通常与Visual Studio一起提供,并且最好使用随附的版本,但如果必要,也可以单独获取。 - Cody Gray

4

如果您熟悉gcc(GNU编译器集合),可以安装MinGW,它会在Win7中设置一个类似Linux的编译环境。否则,Visual Studio 2010 Express是最好的选择。


我不知道如何使用Visual Studio 2010 Express。如何使用它编译C编程? - Mohd Isa
1
首先,创建一个空的(C++控制台)项目。其次,创建一个新的C或C++文件,并在这个新创建的文件中输入或粘贴您的C代码。在工具栏中按下编译和构建按钮,然后按下运行按钮。 - demoslam

1

如何运行它?我的意思是,我已经尝试安装它。但我不知道如何运行。 - Mohd Isa
这里已经有一些关于此的讨论了:例如,看看这个链接... https://dev59.com/_EzSa4cB1Zd3GeqPllFf - Aamir
感谢Aamir的帮助,我会参考那些讨论。 - Mohd Isa
我想使用Cygwin,如何运行它?你能帮助我吗? - Mohd Isa
我使用Ruby开发工具包,它带有GCC和MinGW,只需从http://rubyinstaller.org/downloads/(在页面末尾)下载并解压缩即可,无需安装。 编译.c程序的方法就像gcc -o hello.exe hello.c一样简单。更多信息请参见https://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html。 - peter

1

你可以像其他人建议的那样获取MinGW,但我建议你获取一个简单的IDE(不是VS Express)。你可以尝试使用Dev C++ http://www.bloodshed.net/devcpp.html。它是一个简单的C/C++ IDE,并在内部使用MinGW。在这个IDE中,你可以编写和编译单个C文件,而不必创建完整的“项目”。


1

在Windows 7上编译程序:

您需要从http://www.4shared.com/get/Gs41_5yA/borland_for_graphics.htmlhttp://dwij.co.in/graphics-c-programming-for-windows-7-borland-compiler/下载配置好的Borland编译器。

将Borland的“bin”文件夹放入环境变量中。
现在进入“bin”文件夹并根据您的文件夹结构编辑文件bcc32.cfg。此文件包含头文件和库的设置。

-I"D:\Borland\include;"
-L"D:\Borland\lib;D:\Borland\Lib\PSDK"

现在创建任何C/C++程序,比如myprogram.cpp
使用以下命令编译这堆代码:
F:\>bcc32 myprogram.cpp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接