学C++_第0章 引言/指南_0.6 安装集成开发环境(Integrated Development Environment,IDE)
梅冠华-2019-05-06
翻译自C++学习网站 learncpp(www.learncpp.com) 第0章 第6节
https://www.learncpp.com/cpp-tutorial/installing-an-integrated-development-environment-ide/
0.6 安装集成开发环境(Integrated Development Environment,IDE)
集成开发环境是这样一个软件,其包含了编程中所需的开发、编译、链接和纠错所有功能。
在典型的C++ IDE中,你可以使用带行号和语法高亮显示的代码编辑器。许多(但并非所有)IDEs包含C++编译器和链接器,这样IDE将知道如何交互地把你的源代码转化成可执行文件。并且当你需要纠错你的程序时,你可以使用集成的纠错器。
进一步地,IDEs通常还提供了众多其它有用的编辑特性,比如综合帮助、名称补全、自动格式、甚至是版本控制系统。所以,尽管你可以把上述的事情分开单独来做,然而安装一个IDE并且把这些事情在单独的界面中完成将会更加方便。
让咱们安装一个吧!那么接下来的问题就是“哪一个?”。许多IDEs是免费的(价格上),而且你可以安装多个IDEs,如果你愿意的话,所以这里并不存在“错误的决定”,下面我们将会推荐一些我们所喜爱的IDEs。
如果你脑海里有一些其他的IDE,那么也很好啊。在本教程里我们所展示给你的概念通常对于普遍的现代IDE都行之有效,然而,各式各样的IDEs使用不同的名称、布局、键盘映射等……所以你也许不得不在你的IDE中做些搜索工作以便找到等效的功能。
提醒
你需要安装有C++11编译功能的IDE,因为该教程以C++11为基础讲解相关功能。
Visual Studio (for Windows)
如果你在Windows机子上做开发(像大多数人那样),而且硬盘空间和下载大小并不受限制,那么我们强烈建议使用Visual Studio Community。当你运行安装程序后,你会最终看到一个界面问你想要安装哪个workload,选择Desktop development with C++。如果你不这么做,那么C++功能将不可用。
屏幕右侧的选项用默认的就好了,但是请确保选上了Windows 10 SDK。Windows 10 SDK可被用于老版本的Windows,所以如果你仍旧使用Windows7或8也无需担心了。
如果硬盘空间和/或下载大小有所限制,那么我们推荐微软的免费Visual Studio Express 2017给Windows Desktop,你可以在本页面最底部找到它。
Code::Blocks (for Linux or Windows)
如果你在Linux上搞开发(或者你在Windows上搞开发但是编的程序想要很方便地移植到Linux上),我们推荐Code::Blocks。Code::Blocks是一免费、开源、交叉平台IDE,其在Linux和Windows上皆可运行。
对于Windows用户
确保Code::Blocks的版本有提供MinGW(其应该是那些文件名结尾是mingw-steup.exe中的一个)。这将安装MinGW,其包含了GCC C++编译器的Windows接口。
对于Linux用户
使用Code::Blocks来运行或编译程序所需的依赖项,在一些Linux安装包中可能会存在缺失。
Debian-based Linux用户(例如在Mint或Ubuntu上的那些)可能需要安装编译必须包,在终端命令行键入:sudo apt-get来安装编译必须项。
Arch-linux用户可能需要安装base-devel,可通过pacman -Syu base-devel来安装。
其他Linux版本的用户需要自己决定他们的等效安装包。
当你第一次打开Code::Blocks时,你会面对一个编译器自动检测对话框。如果这样的话,确保GNU GCC Compilier是设置成了默认的编译器,点击OK。
在Code::Blocks中,C++11/C++14/C++17功能是默认关闭的。你若想确定或是打开它们的话,首先,去Settings menu > Compiler:
然后找到有g++ follow the C++XX ISO C++ language standard [-std=c++XX]的框框,其中XX是11、14或其它更高的数值(看下图红圈标出的选项):
勾选有最高数值的那个(上例中,红框中的C++14就是了)
你的Code::Blocks版本可能支持在测试中的或是刚刚发布的C++版本。如果这样的话,其将会是Have g++ follow the coming C++11YY (aka C++XX) ISO C++ language standard [-std=c++ZZ] (见上图中的蓝框)。你可以勾选这些,如果你想要使用那些版本的特性的话,但是注意这些支持可能是不完整的(比如,一些特性可能会有所缺失)。
Q:我想在Code::Blocks中启用C++17特性,但我并未见到-std=C++17选项。
如果你见到了-std=C++1z选项,那就是它了(C++17也称之为C++1z,在大家知道其将会在哪一年最终确定之前)。
或者,你也可以到Other Compiler Options标签并且键入-std=c++17。
如果你的编译器支持C++17,那么这样做也是可行的。如果你使用老版本的Code::Blocks且C++17特性看起来并不支持,那么更新你的编译器吧。
Q:我碰到了“Can’t find compiler executable in your configured search paths for GNU GCC Compiler”错误
尝试如下操作:
- 如果你在Windows中,确保你下载的Code::Blocks版本是有MinGW的,即名字中有mingw的版本。
- 试试在setting、compiler中选择“reset to defaults”。
- 试试在settings, compiler, toolchain executables tab中确保“Compiler’s installation directory”设置为MinGW文件夹(如,C:\Program Files (x86)\CodeBlocks\MinGW)。
- 试试完全卸载,然后重新安装。
- 试试换个不同的编译器。
Mac OSX IDEs
流行的Mac选择包括Xcode(如果你能得到它的话),或Eclipse。Eclipse的默认设置项不是C++,你需要安装额外的C++组件。
尽管Visual Studio的Mac版本已经发布,如Aug 2018,然而其不支持C++,所以暂时我们也不推荐它了。
我能用基于网络的编译器么?
当然可以。当你的IDE还未下载完成(或者你暂时不确定要安装哪个版本)时,你可以用基于网络的编译器来继续该教程,比如引言中的部分内容。
基于网络的编译器对于涉足简单练习是很好地。然而,它们在功能上通常有很大限制——许多并不允许你保存工程、创建可执行文件、或高效地纠错你的程序。当你力所能及的时候,你将想要转移到完整的IDE上去。
我能使用命令行编译器(比如Linux中的g++)么?
当然,但是你将需要找到你自己的编辑器,并且在别处找到如何使用它。
当出错的时候(换言之,当IDE代表“I don’t even…”)
IDE安装可能会导致它们共享的问题。安装可能会完全失败(或者安装正常,但是由于配置错误,当你尝试使用它时,IDE将会碰到问题)。如果你碰到了这类问题,试着重装IDE(如果是第一次安装的话),重启机子,暂时禁用杀毒或反恶意软件,试着重装一次。
如果你仍旧碰到问题,你有两个选择。简单的选择就是换个IDE,另一个选择是修复该问题。不幸的是,导致安装和配置错误的原因千差万别,且和IDE软件自身紧密相关,因此我们并不能高效地给出如何修复这些问题的建议。在这种情况下,我们推荐把这些错误信息粘贴到Google搜索引擎上,并且看看能不能找到论坛帖子涉及到类似的问题以及修复的建议。
前行
一旦你的IDE装好了(这可能是最艰难的步骤,如果事情并不像预料的那样顺利的话),或者你暂时决定使用基于网络的编译器,那么你已经准备好要开始写你的第一个程序了!
梅冠华-2019-05-06
翻译自C++学习网站 learncpp(www.learncpp.com) 第0章 第6节
https://www.learncpp.com/cpp-tutorial/installing-an-integrated-development-environment-ide/