﻿<?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>BlogJava-The blog of Astro Qi-随笔分类-C/C++</title><link>http://www.blogjava.net/AstroQi/category/40092.html</link><description>I'm Astro Qi. If call me, please send email to closoastroqi@126.com</description><language>zh-cn</language><lastBuildDate>Mon, 06 Dec 2010 21:03:07 GMT</lastBuildDate><pubDate>Mon, 06 Dec 2010 21:03:07 GMT</pubDate><ttl>60</ttl><item><title>基于Carbide.C++ 的Symbian开发环境搭建</title><link>http://www.blogjava.net/AstroQi/archive/2010/12/06/339925.html</link><dc:creator>Astro.Qi</dc:creator><author>Astro.Qi</author><pubDate>Mon, 06 Dec 2010 11:37:00 GMT</pubDate><guid>http://www.blogjava.net/AstroQi/archive/2010/12/06/339925.html</guid><wfw:comment>http://www.blogjava.net/AstroQi/comments/339925.html</wfw:comment><comments>http://www.blogjava.net/AstroQi/archive/2010/12/06/339925.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/AstroQi/comments/commentRss/339925.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/AstroQi/services/trackbacks/339925.html</trackback:ping><description><![CDATA[<div class="postTitle">
<h1><a id="ctl04_TitleUrl" class="postTitle2" href="http://www.cnblogs.com/jolboy/archive/2010/03/04/1678026.html">基于Carbide.C++ 的Symbian开发环境搭建</a></h1>
</div>
<p>1.开发环境工具选用Jdk1.5 + ActivePerl-5.6 + S60_5th_Edition_SDK_v1_0+ Carbide.C++.V2.3</p>
<p>JDK1.5 下载的地方很多，就不提供了。</p>
<p>ActivePerl-5.6 下载地址：ftp://ftp.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.635-MSWin32-x86.msi</p>
<p>S60_5th_Edition_SDK_v1_0下载地址：<a href="http://sw.nokia.com/id/577ad48d-290c-4bb5-8bdf-779ea8a5bc6c/S60_5th_Edition_SDK_v1_0_en.zip" target="_blank">http://sw.nokia.com/id/577ad48d-290c-4bb5-8bdf-779ea8a5bc6c/S60_5th_Edition_SDK_v1_0_en.zip</a></p>
<p>Carbide.C++.V2.3下载地址：<a href="http://www.forum.nokia.com/info/sw.nokia.com/id/dbb8841d-832c-43a6-be13-f78119a2b4cb.html" target="_blank">http://www.forum.nokia.com/info/sw.nokia.com/id/dbb8841d-832c-43a6-be13-f78119a2b4cb.html</a></p>
<p>&nbsp;</p>
<p>安装步骤如下：</p>
<p>1、在C盘中建立一个文件夹，如 SymbianApp</p>
<p>2、安装jdk到该目录下</p>
<p>3、安装ActivePerl-5.6到该目录下，安装这个Perl的时候，要注意，如果曾经在系统中装过oracle10G，那么会出现冲
突，oracle10G中自带了一个ActivePerl 5.8版本的，在环境变量中
Path中可以找到相应的路径，需要把5.8版本的路径从环境变量中删除，否则会造成运行出错，无法编译。</p>
<p>4、安装S60_5th_Edition_SDK，这里要注意了，安装到SymbianApp这个目录下的时候，&nbsp;该SDK默认的安装地址是
C:\Program
Files\S60\devices\S60_5th_Edition_SDK_v1.0，要改为c:\SymbianApp
\S60_5th_Edition_SDK_v1.0,这么改的目的，尽量让这个sdk模拟器的路径越短越好，一长串的后果，就是模拟器一打开就直接关
闭。</p>
<p>5、安装Carbide.C++.V2.3</p>
<p>按照上述步骤做完，有可能会出现，Carbide.C++中没有配置默认的sdk包，就需要在软件中手动设置。</p>
<img src ="http://www.blogjava.net/AstroQi/aggbug/339925.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/AstroQi/" target="_blank">Astro.Qi</a> 2010-12-06 19:37 <a href="http://www.blogjava.net/AstroQi/archive/2010/12/06/339925.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Eclipse+CDT+MinGW搭建C++环境</title><link>http://www.blogjava.net/AstroQi/archive/2009/06/05/280227.html</link><dc:creator>Astro.Qi</dc:creator><author>Astro.Qi</author><pubDate>Fri, 05 Jun 2009 08:14:00 GMT</pubDate><guid>http://www.blogjava.net/AstroQi/archive/2009/06/05/280227.html</guid><wfw:comment>http://www.blogjava.net/AstroQi/comments/280227.html</wfw:comment><comments>http://www.blogjava.net/AstroQi/archive/2009/06/05/280227.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/AstroQi/comments/commentRss/280227.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/AstroQi/services/trackbacks/280227.html</trackback:ping><description><![CDATA[<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">1. </span><span style="font-size: 12pt; font-family: 宋体">安装 JRE<br />
由于 Eclipse 本身是用 Java 开发而成，因此自然需要使用到 JRE。<br />
2. 安装 Eclipse<br />
3. 挂上 CDT<br />
4. 安装 MinGW (这个是要让你的计算机上有GCC, G++编译程序)<br />
5. 设置环境变量<br />
</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">详细安装步骤：</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">一、JRE 5.0的安装<br />
<br />
</span><span style="font-size: 12pt; font-family: 'MS Mincho'">‧</span><span style="font-size: 12pt; font-family: 宋体">下载页：<a href="http://java.sun.com/j2se/1.5.0/download.jsp" target="_blank">http://java.sun.com/j2se/1.5.0/download.jsp</a> <br />
</span><span style="font-size: 12pt; font-family: 'MS Mincho'">‧</span><span style="font-size: 12pt; font-family: 宋体">点选 Download JRE 5.0 Update 5 ，点选 Accept 然后选择Window Platform "Windows Offline Installation, Multi-language"<br />
</span><span style="font-size: 12pt; font-family: 'MS Mincho'">‧</span><span style="font-size: 12pt; font-family: 宋体">下载后执行安装即可。<br />
<br />
二、安装Eclipse<br />
首先进入 Eclipse 官方网站 <a href="http://eclipse.org/" target="_blank">http://eclipse.org</a> 左栏找到 Download 目前 3.3 europ版已经Release。下载之后，解压缩到你想放置的路径，拉出快捷方式即可，不必安装。当然也直接下载eclipse-cpp-europa-fall-win32.zip,这样就省了第三步骤</span><span style="font-size: 12pt; font-family: Wingdings">J</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">三 、挂上 CDT<br />
接下来为了要让 Eclipse 可以开发 C/C++ 程序，要挂上 CDT 才可以。首先要下载CDT，下载网址<u><span style="color: blue"><a href="http://www.eclipse.org/cdt/%E6%89%BE%E5%88%B0%20cdt-master-4.0.1.zip">http://www.eclipse.org/cdt/找到 cdt-master-4.0.1.zip</a></span></u></span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">安装：将解压缩后的features、plugins整个文件夹复制到Eclipse安装数据<br />
里，重新开启Eclipse即可。</span></p>
<p style="text-align: left" align="left"><span style="background-color: #ac58ff">如果CDT安装后没效果，删除D:\eclipse\configuration\org.eclipse.osgi目录下的manifest文件夹、.bundledata和.state文件然后重启Eclipse即可<span style="font-size: 12pt; font-family: 宋体">。</span></span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">当建立新项目的时候，就会看到已经有了 C 及 C++ 的选项，代表安装成功了。<br />
如果看不到，加上 -clean 执行就可以。<br />
<br />
</span><img height="500" alt="" src="http://nknush.kh.edu.tw/%7Ejohnsirhp/Eclips4.jpg" width="525" border="0" /><br />
</p>
<p style="text-align: left" align="left"><span style="font-family: 宋体">四</span><span style="font-size: 12pt; font-family: 宋体">、安装MinGW<br />
到目前为止，已经为 Eclipse 装上了 CDT，但还需要一个 "编译程序" 才能编译程序<br />
因此要下载可在Windows上使用的GNU C、C++编译程序，这里要下载的是：MinGW。<br />
下载网址：http://www.mingw.org/download.shtml#hdr6<br />
在下载页中找到 MinGW-5.1.3.exe<br />
PS: <br />
安装：安装目录选C槽，然后一直点"下一步"就行了。安装完后路径是这样 -&gt; C:\MinGW。</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">在环境变量里加入下列设定：<br />
PATH ： C:\MinGW\bin;<br />
Windows 的用户要在 "我的计算机"系统变量-&gt;path 选 "编辑" <br />
在最前面加上 C:\MinGW\bin; 即可。 <br />
</span><img height="132" alt="" src="http://nknush.kh.edu.tw/%7Ejohnsirhp/Eclips5.jpg" width="347" border="0" /><br />
<span style="font-size: 12pt; font-family: 宋体"><br />
</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体"><span style="background-color: #ac58ff">因为Eclipse里面预设用来进行编译的档名为 make.exe 但是 Mingw安装起来后预设的 make 檔名是 mingw32-make.exe<br />
因此你可以将 mingw32-make 改名成为 make 就可以了！</span><br />
<br />
为了使CDT能够取用 MinGW来进行编译的工作, 我们要回到 Eclipse 当中进行设定<br />
Window-&gt;Preferences-&gt;C/C++-&gt;New CDT project wizard-&gt;Makefile Project <br />
找到 Binary Parser 取消 Elf Parser 改选 PE Windows Parser<br />
</span></p>
<p><img height="601" alt="" src="http://nknush.kh.edu.tw/%7Ejohnsirhp/Eclips10.jpg" width="625" border="0" /></p>
<p><br />
<span style="font-family: 宋体"><br />
五</span><span style="font-size: 12pt; font-family: 宋体">、安装GDB<br />
gdb 是一个用来调试 C 和 C++ 程序的强力调试器. 它使你能在程序运行时观察程序的内部结构和内存的使用情况. 以下是 gdb 所提供的一些功能: </span></p>
<ul type="disc">
    <li style="text-align: left"><span style="font-size: 12pt; font-family: 宋体">它使你能监视你程序中变量的值.</span>
    <li style="text-align: left"><span style="font-size: 12pt; font-family: 宋体">它使你能设置断点以使程序在指定的代码行上停止执行.</span>
    <li style="text-align: left"><span style="font-size: 12pt; font-family: 宋体">它使你能一行行的执行你的代码.</span> </li>
</ul>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">最新版本的WinGW没有提供GDB工具,因此这里我们要单独下载,在 http://www.gnu.org/software/gdb/download/下载gdb-5.2.1-1.exe<br />
并安装至C:\MinGW的位置即可。<br />
</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体"><br />
</span><span style="font-size: 12pt; font-family: 宋体">到此已经全部安装完毕。<br />
<br />
<br />
六<span style="font-size: 12pt; font-family: 宋体">、</span>设置环境变量<br />
&nbsp;&nbsp;<br />
&nbsp; PATH:&nbsp; C:\MinGW\bin&nbsp; (如果系统已经有其它的C/C++编译器,请把C:\MinGW\bin加在最前面)&nbsp; <br />
&nbsp; <br />
&nbsp; LIBRARY_PATH:&nbsp; C:\MinGW\lib&nbsp; <br />
<br />
&nbsp; C_INCLUDE_PATH:&nbsp; C:\MinGW\include&nbsp; <br />
<br />
&nbsp; CPLUS_INCLUDE_PATH:&nbsp; C:\MinGW\include\c++\5.1.3;C:\MinGW\include\c++\5.1.3\mingw32;C:\MinGW\include\c++\5.1.3\backward;C:\MinGW\include<br />
</span></p>
<div style="text-align: center" align="center"><span style="font-size: 12pt; font-family: 宋体"><br />
<br />
<hr align="center" width="100%" size="2" />
</span></div>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">接下来来试写一个小小程序<br />
<br />
打开 Eclipse -&gt; New -&gt; C/C++ -&gt; Makefile Project-&gt;Hello World C++ Project<br />
</span><img height="500" alt="" src="http://nknush.kh.edu.tw/%7Ejohnsirhp/Eclips6.jpg" width="525" border="0" /><br />
<span style="font-size: 12pt; font-family: 宋体"><br />
点 "完成"<br />
</span><img height="485" alt="" src="http://nknush.kh.edu.tw/%7Ejohnsirhp/Eclips8.jpg" width="673" border="0" /><br />
<span style="font-size: 12pt; font-family: 宋体"><br />
<br />
<br />
键入这一段程序代码</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%; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdio.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdlib.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" />#include</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">string</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" />usingnamespace&nbsp;std;<br />
<img alt="" src="../../Images/OutliningIndicators/None.gif" align="top" /><br />
<img id="Codehighlighter1_106_397_Open_Image" onclick="this.style.display='none'; Codehighlighter1_106_397_Open_Text.style.display='none'; Codehighlighter1_106_397_Closed_Image.style.display='inline'; Codehighlighter1_106_397_Closed_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_106_397_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_106_397_Closed_Text.style.display='none'; Codehighlighter1_106_397_Open_Image.style.display='inline'; Codehighlighter1_106_397_Open_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()</span><span id="Codehighlighter1_106_397_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;puts(</span><span style="color: #000000">"</span><span style="color: #000000">Hello&nbsp;World!!!</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img id="Codehighlighter1_148_370_Open_Image" onclick="this.style.display='none'; Codehighlighter1_148_370_Open_Text.style.display='none'; Codehighlighter1_148_370_Closed_Image.style.display='inline'; Codehighlighter1_148_370_Closed_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_148_370_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_148_370_Closed_Text.style.display='none'; Codehighlighter1_148_370_Open_Image.style.display='inline'; Codehighlighter1_148_370_Open_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">1</span><span style="color: #000000">)&nbsp;</span><span id="Codehighlighter1_148_370_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">请输入密码:</span><span style="color: #000000">"</span><span style="color: #000000">n&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">);</span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gets(cc);<br />
<img id="Codehighlighter1_231_274_Open_Image" onclick="this.style.display='none'; Codehighlighter1_231_274_Open_Text.style.display='none'; Codehighlighter1_231_274_Closed_Image.style.display='inline'; Codehighlighter1_231_274_Closed_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_231_274_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_231_274_Closed_Text.style.display='none'; Codehighlighter1_231_274_Open_Image.style.display='inline'; Codehighlighter1_231_274_Open_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(strcmp(cc,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">123456</span><span style="color: #000000">"</span><span style="color: #000000">)</span><span style="color: #000000">!=</span><span style="color: #000000">0</span><span style="color: #000000">)&nbsp;</span><span id="Codehighlighter1_231_274_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">口令错误，按任意键继续</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img id="Codehighlighter1_281_364_Open_Image" onclick="this.style.display='none'; Codehighlighter1_281_364_Open_Text.style.display='none'; Codehighlighter1_281_364_Closed_Image.style.display='inline'; Codehighlighter1_281_364_Closed_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_281_364_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_281_364_Closed_Text.style.display='none'; Codehighlighter1_281_364_Open_Image.style.display='inline'; Codehighlighter1_281_364_Open_Text.style.display='inline';" alt="" src="../../Images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span>&nbsp;<span style="color: #0000ff">else</span>&nbsp;<span id="Codehighlighter1_281_364_Open_Text"><span style="color: #000000">{<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">密码是:</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%s</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;cc);<br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">break</span><span style="color: #000000">;<br />
<img alt="" src="../../Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img alt="" src="../../Images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;EXIT_SUCCESS;<br />
<img alt="" src="../../Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div>
<p style="margin-bottom: 12pt; text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">进行存档，存档时就会自动编译<br />
<br />
点 "Debug As"-&gt; Local C/C++ Application<br />
就可以在 控制台 看到执行结果了!!</span></p>
<img src ="http://www.blogjava.net/AstroQi/aggbug/280227.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/AstroQi/" target="_blank">Astro.Qi</a> 2009-06-05 16:14 <a href="http://www.blogjava.net/AstroQi/archive/2009/06/05/280227.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>