一、提前的话
要说C语言和Linux的关系大家应该都不会陌生,Linux系统内核就是用C语言开发的,所以所有的Linux系统下面 都会有C的编译调试工具,不过这些工具都是命令式的,正式开发的话会很不方便。Fedora在安装的时候可以选择安装Fedora Eclipse,这个IDE很强大,C,C++,Java,Python等等都支持,而且编译,调试和测试等功能也很完善。不过一般太强大的东西都有一个 毛病就是速度会比较慢,在dave的机器上,打开Eclipse需要20秒之多,选项也太多,用起来眼花缭乱。我们想要一个快速,灵活而不失强大的C开发 环境。
Code::Blocks是一款跨平台的C/C++的IDE。支持Windows,Linux,Mac操作系统,支持多种编译器,像 Microsoft C,GNU C,Borland C,Intel C等等,在Windows下有附带GNU C的版本。在Linux下自然不需要附带,因为系统已经给我们准备好了,那么下面咱们就安装并体验下这个IDE吧。

二、安装
Fedora等支持YUM的系统可以直接使用YUM命令来安装,在root账户下输入以下命令
yum install codeblocks
然后按照提示操作即可。
Ubuntu等支持apt-get的系统可以使用apt-get install codeblocks下载安装,或者从官网http://www.codeblocks.org/下载安装,具体步骤不再详述。

三、配置
安装成功之后,主菜单-->编程-->Code::Blocks IDE 进入IDE,第一次打开软件的时候会自动检测系统中存在的C编译器,Linux下一般都是自动检测到GNU C
 
图1:自动检测系统自带的编译器
检测完毕,点确定进入软件环境就可以看到Code::Blocks的界面了。

 
图2:Code::Blocks默认界面
是不是觉得窗口上的工具条有点乱,按照自己的喜好拖动下,立刻变得很整洁。

图3:调整后的界面
在dave的机器上,Code::Blocks检测出来的编译器的路径有点问题,以至于无法编译程序,不知道是不是系统的BUG,所以我们还要进一步检 查编译器的路径。点击菜单栏的Settings-->Compiler and debugger...进入编译器和调试器的设定对话框,看Selected compiler是不是你想要使用的编译器,由于我们默认是GNU C,所以这里显示的是GNU GCC Compiler。

图4:默认的GNU C编译器
然 后点击 Search directories旁边的箭头四次,使得标签到Toolchain executables这一项,然后在观察Compiler's installation directory 下面的文本框里填写的是不是你编译器的路径。Fedora下的GNU C默认路径是在/usr/bin下,这里显示的也是/usr/bin(如果显示的是/usr说明你的设置没有错误),下面一行红色的提示意思是编译器必须 在bin目录下。注意,这里的目录不能填写/usr/bin,如果填写/usr/bin则Code::Blocks会在/usr/bin/bin下找编译 器,这肯定是错误的路径,但是软件默认设置的就是/usr/bin,真是个很恶搞的bug,这里填写/usr就可以了.然后确定退出。

图5:使用/usr路径
由于Code::Blocks默认使用Xterm作为运行程序的控制台界面,在Fedora下默认没有安装这款软件,而且这个东西也算个古董了,默认不 支持中文,我们可以把gnome-terminal(Gnome桌面环境下的控制台)作为默认控制台,当然如果你是KDE桌面环境的话,可以选择KDE的 控制台。点击菜单栏的Settings-->Environment...进入环境设置,在弹出对话框中可以看到下面有一行:
Terminal to launch console programs:
右边的文本框的内容是:
xterm -T $TITLE -e

图6:环境设置界面
把文本框内容更改为:
gnome-terminal -t $TITLE -x
即可把运行控制台更改为Gnome自带的控制台。
如果你想使用默认的Xterm控制台,而系统没有安装可以在控制台输入
yum install xterm
来安装Xterm。
四、试运行
期盼已久的时刻终于到了,下面要运行是运行Hello World程序。点击菜单栏Fiel-->New-->Project...蹦出一 个新建工程的对话框,里面是不同类型的工程,我们选择Console application 然后点击Go按钮,来新建一个控制台的程序。

图7、新建控制台工程
下面出现的是欢迎你建立程序的无用窗口,你可以在Skip this page next time 前面打对勾来让这个烦人的提示去见上帝。然后Next下一部是让你选择语言类型,我们这里选择C来编C语言程序(其实选择C++也可以编写C语言程序 --!),下一步。在Project title下的文本框里填写我们的工程名字,这里我写的ctest;Folder to create project in:下面填写工程路径,我这里是用的/home/dave/cbwork,剩下两个文本框它会自动填写,不管,直接Next。

图8、设置工程路径和名字
然后是选择编译器和两个工程设置,确认无误后,点Finish,这时候Code::Blocks会把创建好的工程显示到主窗口左边的Mangement栏里,里面会有一个main.c的默认文件,点击打开,你会发现Hello World!程序已经写好了。

图9、建立好的工程和文件
这时候点击屏幕上方的“齿轮红箭头”图标来编译和运行程序。

图10、xterm运行效果

图11、gnome-terminal运行效果
好了,到了现在你应该对Code::Blocks的一些设置和使用有个初步的了解,剩下的事情就是写程序然后进一步熟悉这个软件,以后有机会也会进一步介绍这款IDE。

Fedora Linux 下安装配置C开发环境Code::Blocks的更多相关文章

  1. Ubuntu Linux下如何配置Android开发环境

    下载和安装Win7系统Android开发环境中讲了怎样在Win7系统中安装Android开发环境,那么怎样在Linux系统中配置Android开发环境呢?本篇文章就将演示如何使用Eclipse.And ...

  2. python_在windows下安装配置python开发环境及Ulipad开发工具

    最近开始学习Python,在网上寻找一下比较好的IDE.因为以前用C#做开发的,用Visual Studio作为IDE,鉴于用惯了VS这么强大的IDE,所以对IDE有一定的依赖性. Python的ID ...

  3. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  4. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  5. Linux 下安装配置 JDK7

    Linux 下安装配置 JDK7 配置环境(debian 7) 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor Li ...

  6. (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

    Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...

  7. Linux下快速搭建php开发环境

    php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...

  8. linux 下安装配置jboss as7以及部署应用

    linux 下安装配置jboss as7以及部署应用 1.测试平台及软件 centos 5.4 jdk-7u5-linux-i586.rpm jboss-as-7.1.1.Final.zip jbos ...

  9. Linux下安装配置Node及memcached

    这篇主要是记录Linux下安装Node及memcached遇到的问题及安装配置过程,方便日后查阅 Node安装及配置 [root@hostname ~]tar zxvf node-v0.12.4.ta ...

随机推荐

  1. Spark优化之二:集群上运行jar程序,状态一直Accepted且不停止不报错

    如果运行Spark集群时状态一直为Accepted且不停止不报错,比如像下面这样的情况: 15/06/14 11:33:33 INFO yarn.Client: Application report ...

  2. Android--split()分割字符串特殊用法

    split()分割字符串 1.不同环境下的区分 Java:分割字符串不能写成split("$")//$为要分割的字符Android:分割字符串需要加上中括号split(" ...

  3. iOS--手势之谜

    原文转至: http://www.cnblogs.com/huangjianwu/p/4675648.html iOS在手机APP的手势操作中包含了:拖动.捏合.旋转.点按.长按.轻扫.自定义等等,详 ...

  4. PuTTY配置

    目录 1.作用? 2.中文问题解决 ? 3.GUI支持? 4.使用密钥对实现安全快捷的无密码登陆? 5.操作习惯(Alt+Enter全屏以及字体配置) 6.附录(sshd服务器配置) 1.作用? Pu ...

  5. ASP.NET MVC网站在opera mobile emulator中浏览

         众所周知,ASP.NET MVC4有一个Moblie Application,我们都可以通过这个来开发手机网站,当然为了简单,也可以在一般的MVC中的View下面加个后缀mobile,形如I ...

  6. 20145304 Java第四周学习报告

    20145304<Java程序设计>第四周学习总结 教材学习内容总结 1.继承共同行为: 继承基本上就是避免多个类间重复定义共同行为,关键词为extends. 代码如下: //继承共同行为 ...

  7. C++string中有关大小和容量的函数浅析

    1.length()与size() length是因为沿用C语言的习惯而保留下来的,string类最初只有length,引入STL之后,为了兼容又加入了size,它是作为STL容器的属性存在的,便于符 ...

  8. JavaScript-join连接符

    1.转字符串:2种 1.将数组中每个元素都转为字符串,再用逗号分隔:var str=String(arr); 2.将数组中每个元素都字符串,再用自定义下标连接每个元素 var str=arr.join ...

  9. Node.js 相关资料网站汇总

    地址:https://cnodejs.org/ nodejs中文网:http://nodejs.cn/ nodejs中文网:http://www.nodejs.net/ 相关API地址:http:// ...

  10. C 语言文件操作

    C 语言文件操作 1. 数据流:     程序与数据的交互以流的形式进行.fopen 即打开数据流,fclose 即刷新数据流.     所谓数据流,是一种抽象,表示这段数据像流一样,需要逐步接收,不 ...