﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-真 OO无双之真乱舞书-随笔分类-[Linux] C++</title><link>http://www.cppblog.com/oomusou/category/3005.html</link><description>写程序是一件很快乐的事 Since 2006/10/22</description><language>zh-cn</language><lastBuildDate>Mon, 19 May 2008 17:30:05 GMT</lastBuildDate><pubDate>Mon, 19 May 2008 17:30:05 GMT</pubDate><ttl>60</ttl><item><title>如何在Linux使用Eclipse + CDT开发C/C++程序? </title><link>http://www.cppblog.com/oomusou/archive/2006/11/11/15020.html</link><dc:creator>真 OO无双</dc:creator><author>真 OO无双</author><pubDate>Sat, 11 Nov 2006 12:56:00 GMT</pubDate><guid>http://www.cppblog.com/oomusou/archive/2006/11/11/15020.html</guid><wfw:comment>http://www.cppblog.com/oomusou/comments/15020.html</wfw:comment><comments>http://www.cppblog.com/oomusou/archive/2006/11/11/15020.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cppblog.com/oomusou/comments/commentRss/15020.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/oomusou/services/trackbacks/15020.html</trackback:ping><description><![CDATA[
		<p>
				<strong style="FONT-SIZE: 14pt">
						<span style="FONT-SIZE: 10pt; COLOR: #993300">A. 为什么要在Linux使用Eclipse开发C/C++程序?</span> </strong>
				<br />
				<br />Linux是一个以C/C++开发为主的平台，无论是Kernel或是Application，主要都使用C/C++开发。传统在Linux下开发程序，是在文字模式下，利用vi等文字编辑器撰写C/C++程序存盘后，在Command line下使用gcc编译，若要debug，则使用gdb。<br /><br /><br /></p>
		<p>这种开发方式生产力并不高，若只是开发学习用的小程序则影响不大，但若要开发大型项目时，程序档案个数众多，需要用project或solution的方式管理；且debug时breakpoint的加入，单步执行，观察变量变化等，都需要更可视化的方式才能够增加生产力；最重要的，由于现在的程序语言皆非常的庞大，又有复杂的函式库，要程序员熟记所有的程序语法和function名称，实在很困难，所以语法提示(Intellisense)的功能就非常重要，这些就必须靠IDE来达成。</p>
		<p>
				<br />在Windows平台上，若要开发C/C++程序，我们有Microsoft Visual Studio、Borland C++ Builder可用，这些都是很好用的IDE，但可惜仅能在Windows下使用，但是在Linux平台呢?基于以下理由，我推荐使用Eclipse开发C/C++程序：<br /><br /><br />1. Eclipse是一个用Java所撰写IDE，因此可跨平台，所以在Linux和Windows平台下皆可使用Eclipse，可降低程序员熟析IDE的学习曲线。<br /><br /><br />2. Eclipse虽然主要拿来开发Java程序，但事实上Eclipse为一个『万用语言』的IDE，只要挂上plugin后，就可以在Eclipse开发各种语言程序，所以我们只要挂上CDT(C/C++ Development Toolkit)后，就可以在Eclipse开发C/C++程序，除此之外，目前的主流程序语言，如C/C++、C#、Java、PHP、Perl、Python、Ruby、Rebol、JavaScript、SQL、XML、UML等，皆可在Eclipse上撰写，所以只要熟析Eclipse的IDE环境，将来若开发其它语言程序，就不用再重新学习IDE环境了。<br /><br /><br />3. 最重要的，Eclipse和CDT是Open Source且完全免费，取得相当容易，事实上Fedora 5已经包含Eclipse和CDT了，虽然预设Fedara 5安装时并没有含Eclipse，只要手动另外加选即可。</p>
		<p>
				<br />
				<strong style="FONT-SIZE: 10pt; COLOR: #993300">B. 如何在Linux下安装Eclipse和CDT?</strong>  <br />i. 由Linux Distribution安装Eclipse，Fedora 5就内含Eclipse和CDT。<br /><br />ii. 手动安装<br />  1. 下载档案<br />    A、 下载JRE(Java Runtime Environment) 。(<a href="http://java.sun.com/javase/downloads/index.jsp" target="_blank"><font color="#666666">http://java.sun.com/javase/downloads/index.jsp</font></a>)<br /><br />    B、 下载Eclipse SDK。(<a href="http://www.eclipse.org/downloads/" target="_blank"><font color="#666666">http://www.eclipse.org/downloads/</font></a>)<br /><br />    C、 下载CDT。(<a href="http://www.eclipse.org/cdt/downloads.php" target="_blank"><font color="#666666">http://www.eclipse.org/cdt/downloads.php</font></a>)<br /><br />  2. 安装<br />    <strong>A、 安装JRE</strong><br />      i. [root@localhost ~]#mkdir /usr/local/java<br /><br />      ii. <span style="COLOR: #008000">(将档案jre-1_5_0_09-linux-i586-rpm.bin下载到/usr/local/java目录下)<br /></span><br />      iii. <span style="COLOR: #008000">(超级用户模式)<br /></span>      [root@localhost ~]#su            <br /><br />      iv.  [root@localhost ~]#cd /usr/java<br /><br />      v. <span style="COLOR: #008000">(将您所下载的档的权限更改为可执行)<br /></span>      [root@localhost java]#chmod a+x jre-1_5_0_09-linux-i586-rpm.bin <br /><br />      vi. <span style="COLOR: #008000">(启动安装过程) </span><br />      [root@localhost java]#./jre-1_5_0_09-linux-i586-rpm.bin<br />      <span style="COLOR: #008000">(此时将显示二进制许可协议，按控格显示下一页，读完许可协议后，输入 『yes』继续安装。此时会将解压缩，产生jre-1_5_0_9-linux-i586.rpm)<br /><img alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/JRE1.jpg" border="0" /><br /><br /></span>      vii. <span style="COLOR: #008000">(安装jre-1_5_0_9-linux-i586.rpm)</span><br />      [root@localhost java]#rpm –ivh jre-1_5_0_9-linux-i586.rpm <br /><img height="235" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/JRE2.jpg" width="574" border="0" /><br />      <span style="COLOR: #008000">(此时会将JRE装在/usr/java/jre1.5.0_09目录下)<br /></span><br />      viii. <span style="COLOR: #008000">(设定环境变量，让Linux能找到JRE)<br /></span>      [root@localhost java]#vi /etc/profile<br />      <span style="COLOR: #008000">(将以下内容加入在档案后面)</span></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<span style="COLOR: #008080">1</span>
				<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">PATH</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">$PATH:</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">usr</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">java</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">jre1.</span>
				<span style="COLOR: #000000">5</span>
				<span style="COLOR: #000000">.0_09</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">bin<br /></span>
				<span style="COLOR: #008080">2</span>
				<span style="COLOR: #000000">
						<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />export JAVA_HOME</span>
				<span style="COLOR: #000000">=/</span>
				<span style="COLOR: #000000">usr</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">java</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">jre1.</span>
				<span style="COLOR: #000000">5</span>
				<span style="COLOR: #000000">.0_09<br /></span>
				<span style="COLOR: #008080">3</span>
				<span style="COLOR: #000000">
						<img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />export CLASSPATH</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">$JAVA_HOME</span>
				<span style="COLOR: #000000">/</span>
				<span style="COLOR: #000000">lib:.</span>
		</div>
		<p>      <span style="COLOR: #008000">(存盘后，重新启动Linux)<br /><br /></span>      ix. <span style="COLOR: #008000">(测试Java是否安装成功)<br /></span>      [root@localhost ~]#java –version<br /><img height="164" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/JRE3.jpg" width="665" border="0" /><br /><br />   <strong> B、 安装Eclipse SDK</strong><br />      i. <span style="COLOR: #008000">(将档案eclipse-SDK-3.2.1-linux-gtk.tar.gz下载到桌面)<br /><br /></span>      ii. [root@localhost ~]#cd /usr/local<br /><br />      iii. [root@localhost local]#cp ~Desktop/eclipse-SDK-3.2.1-linux-gtk.tar.gz .    <br /><br />      iv.<span style="COLOR: #008000"> (将eclipse-SDK-3.2.1-linux-gtk.tar.gz解压缩)</span><br />      [root@localhost local]#tar –zxvf eclipse-SDK-3.2.1-linux-gtk.tar.gz<br /><br />      v. [root@localhost local]#cd eclipse<br /><br />      vi. <span style="COLOR: #008000">(执行Eclipse)<br /></span>      [root@localhost eclipse]#./eclipse<br /><br />      vii. <span style="COLOR: #008000">(Select a workspace)<br /></span>      <span style="COLOR: #008000">(将Use this as the default and do not ask again打勾，以后就不会出现这个窗口)<br /><img height="319" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Eclipse1.jpg" width="704" border="0" /><br /><br />      (第一次执行Eclipse会出现此error，因为没有任何Eclipse设定档，所以无法读取，第二次执行Eclipse就无此错误讯息，按OK继续。)<br /><img height="184" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Eclipse2.jpg" width="701" border="0" /><br /><br />      (Eclipse主画面)<br /><img height="549" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Eclipse3.jpg" width="800" border="0" /><br /><br /></span>    <strong>C、 安装CDT</strong><br />      i. <span style="COLOR: #008000">(将档案org.eclipse.cdt-3.1.1-linux.x86.tar.gz下载到桌面)</span><br /><br />      ii. [root@localhost ~]#cp ~/Desktop/org.eclipse.cdt-3.1.1-linux.x86.tar.gz . <br /><br />      iii. <span style="COLOR: #008000">(将org.eclipse.cdt-3.1.1-linux.x86.tar.gz解压缩)</span><br />      [root@localhost ~]#tar –zxvf org.eclipse.cdt-3.1.1-linux.x86.tar.gz<br />      <span style="COLOR: #008000">(档案将解到~/eclipse目录下)</span><br /><br />      iv. <span style="COLOR: #008000">(安装CDT plugin)<br /></span>      [root@localhost ~]cp –r eclipse/plugins/. /usr/local/eclipse/plugins/ <br /><br />      v. <span style="COLOR: #008000">(启动Eclipse，多了C和C++ Project支持)</span> <br />    <img height="499" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/CDT1.jpg" width="700" border="0" /><br /><br /><span>C. <strong>如何在Eclipse上开发C/C++程序?</strong></span><br /><strong>i. 建立Hello Word project</strong><br />  1. 建立C/C++ project<br /><img height="156" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld1.jpg" width="468" border="0" /><br /><br />  2. 选择Managed Make C++ Project(若选择Managed Make C++ Project，Eclipse会自动为我们建立make file；若选择Standard Make C++ Project，则必须自己写make file。)<br /><img alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld2.jpg" border="0" /><br /><br />  3. 输入Project name<br /><img alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld3.jpg" border="0" /><br /><br />  4. 选择Project类型(如执行档或Library，这里选择执行档即可)<br /><img height="498" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld4.jpg" width="700" border="0" /><br /><br />  5. 额外的设定<br /><img height="499" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld5.jpg" width="700" border="0" /><br /><br />  6. Open Associated Perspective?(选Yes继续)<br /><img height="498" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld6.jpg" width="699" border="0" /><br /><br />  7. 建立C++ Source File<br /><img height="308" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld7.jpg" width="577" border="0" /><br /><br />8. 输入C++ Source File檔名<br /><img alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld8.jpg" border="0" /><br /><br />  9. 输入C++程序代码<br /><img height="550" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld9.jpg" width="799" border="0" /><br /><br />  10. 执行程序(显示在下方的Console区)<br /><img height="548" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/HelloWorld10.jpg" width="799" border="0" /><br /><br /><strong>ii. 如何在Eclipse CDT中Debug C/C++程序?</strong><br />1. 在Eclipse中Debug，就如同在一般IDE中Debug一样，只要在程序代码的左方按两下，就可加入breakpoint。<br /><img height="547" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Debug1.jpg" width="799" border="0" /><br /><br />  2. 启动Debug<br /><img height="547" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Debug2.jpg" width="798" border="0" /><br /><br />  3. Debug设定，按Debug开始Debug<br /><img height="550" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Debug3.jpg" width="800" border="0" /><br /><br />  4. 单步执行，显示变量变化<br /><img height="548" alt="" src="http://www.cnblogs.com/images/cnblogs_com/oomusou/Debug4.jpg" width="798" border="0" /><br /><br /><span style="FONT-SIZE: 12pt; COLOR: #993300">E. 结论<br /></span>Eclipse为Linux在C/C++开发提供一个完善的IDE环境，事实上，以我用过众多IDE的经验，除了Visual Studio最方便外，Eclipse的好用也直追Visual Studio，并且超越Borland C++ Builder及Dev C++，虽然安装上比较麻烦，但只要依照本文介绍一步一步的设定，就一定可完成Eclipse设定，若想要在Windows平台使用gcc compiler，也建议使用Eclipse + CDT + MinGW的组合。<br /><br />See Also <br /><a href="http://www.cnblogs.com/oomusou/archive/2006/11/10/557066.html"><font color="#666666">[转载] Eclipse + CDT + MinGW 安装方法</font></a></p>
		<p>Reference <br />1. 为Linux手动下载和安装Java Runtime Enrironment(JRE)的说明<br />(<a href="http://www.java.com/zh_CN/download/help/5000010500.xml" target="_blank"><font color="#666666">http://www.java.com/zh_CN/download/help/5000010500.xml</font></a>)<br />2. Eclipse 3.0 CDT on Linux<br />(<a href="http://www.autexier.de/jmau/dev/CDT/cdt.html" target="_blank"><font color="#666666">http://www.autexier.de/jmau/dev/CDT/cdt.html</font></a>)<br /></p>
<img src ="http://www.cppblog.com/oomusou/aggbug/15020.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/oomusou/" target="_blank">真 OO无双</a> 2006-11-11 20:56 <a href="http://www.cppblog.com/oomusou/archive/2006/11/11/15020.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>