文逸首页 小文论坛 文逸博客 精华文章
 首页 | 新闻 | 论坛 | 博客 | 专题 | FTP | 金融 | 微博 | 图库 | MyHome | 搜索 | 登陆 | 注册 | 帮助 | 设为首页  ·在线人数: 957

发表新帖 我的主页  用户登陆 返回上页 收藏本帖 文友爬行榜

标题:[转帖]Dev-cpp 小型指南,原载于CSDN论坛
[作者] chinesedragon [发表时间] 2005/12/3 13:30:30  [回复] 1  [点击] 8864

 [作者] chinesedragon   [头衔]   [经验] 525  [等级] 平民   [发帖] 97   [回帖] 95  [登陆] 49
[发表时间] 2005/12/3 13:30:30  [楼主]
标题: [转帖]Dev-cpp 小型指南,原载于CSDN论坛
 
Dev-cpp 小型指南,原载于CSDN论坛 
Dev-cpp是一个GCC在win32下的IDE程序,用Dephi 5编写,只有2M
具有以下功能:

   1.集成编译环境,支持工程模板.
   2.支持语法加高,自动注释,对中文的支持也不错.
   3.支持CVS集成
   4.支持源码分析,可以形成类树图.
   5.支持扩展包.

Dev-cpp官方发布有集成MinGW32 gcc编译套件,最新支持GCC 3.3(2003-7-15)
也可以支持MinGW其它版本和Cygwin gcc的各个版本.不过需要手动设置.

Dev-cpp支持多语言环境,中文版界面由我的好友nyra(nyra@sohu.com)维护,如果
大家发现中文版有翻释问题可以找她.如果有兴趣翻译帮助文件,也请联系.

Dev-cpp有两个常用版本,一是开发中的5.0beta,最新一版是4.9.8.0
另一个是4.01,是4.0的修正版(其中集成Gcc 2.9.5),前者功能较多,而后者较稳定.

图形化环境我就不多说了,和VC的用法类似,其实大家问题多集中于Gcc本身.

GCC, GCC和gcc不同的东西.前者是Gnu的编译环境,包括gcc, g++, gcj等多种语言的编译器
和as(汇编), ar(库), ld(联接器)等一系统编译工具.gcc是GCC中C语言的编译器,g++是
C++语言的编译器.

GCC被移植到多种操作系统中,在Win32上最著名是MinGW和Cygwin两个版本,MinGW的全称是
Minial GCC for Windows,如题,它是Win32上的一个小型GCC,只包括最少的GCC组件<10M
而Cygwin就是一个Unix On Windows的大系统,全部下载有300多兆,Unix下的大多数软件
在Cygwin中都有移植版,包括X-windows.还有一个for Dos-32 的GCC,名叫Djgpp,与Mingw的
目标类似,不同的是它是一个以MZ为目标程序的可以在非Win32环境下运行(例如FreeDOS)
它们都移值了GCC官方发布的最新版GCC.

下面集中力气讲GCC 3.2以及Mingw移植版.

GCC3.2(G++)号称是对C++标准支持最好C++编译器,真否不确.(因为VC7.0也说它是)但是
有一点很明确,在没做特殊配置的情况下,G++只支持标准C++语法,不再对早期的非标准
C++语法进行支持.所以VC下的C++程序很多不能运行.BC++3.1等(很多教科书的目标平台)
的例程也不支持.所以,请在问为什么我的程序在XX编译器中可以运行,而到了Dev-cpp
中不能编译之类问题前,首先请查看你的程序是不是真正的没错.

Dev-cpp对以cpp,cxx为扩展名的文件默认使用G++编译,所以如果你的C语言程序请以c为扩展
名,不然很可能出错,请记住C和C++是两种不能的语言,它们并非完全兼容.
C++的标准是C++ 98,而语言的新标准是C99,但它们都要收费,推荐B.S.的C++ Programming 
Language做为C++的标准参考书.当然如果以C++ 98标准为参考也不错.

MinGW包括:gcc,g++,gdb和binary utils以及一个msys环境(单独下载),前面几项都是命令行
程序.MinGW除了标准c++库和标准C库,还包括一个称为w32api的Win32库和openGL库.

目录结构如下:(如果你下载的Devcpp,它们在Dev-cpp/mingw32目录下
/bin      可执行程序(壳)
/include  头文件
/mingw
/usr/   (真实的)可执行程序
/lib   库

Dev-cpp的默认安装中,相关的路径都已经设好.如没有设好,很难编译.
设置方法是在选项/编译环境菜单中设置.
注意新的C++头文件在/include/g++/3.2/下

下面回答一些问题:

1.多朋友问到在devc++下面做图形,抱歉,devC++没有graphics.h文件的,好像不能作图(具体解决办法,期待高手补充.....)
graphics.h是borland的Dos图形库的头文件,win32下不支持,请使用win32的绘图方法GDI或DirectDraw.

2. Dev C++ 是用dllwrap.exe来做DLL的(原话是这样的,期待高手解释.......
是的,dllwrap语法是:
dllwrap 选项 目标文件(即*.o)
常用选项有:
  --def <filename> DEF文件名
  --dllname <名称>  DLL的名称
  --implib <导入lib名> 输出DLL导入库

3.关于库的引用
GCC的库名为libXXX.a其中XXX为库名,编译时只需要增加选项-lXXX即可。GCC的目标文件与
VC使用的Coff以及Borland使用的OMF格式都不一样,不能直接使用.需要重新编译生成.a的库。

GCC库管理程序是ar,它的用法是:ar rcs 库文见名.a 目标文件.o  哦,有人说过了:)

4.关于调试及目标文件的大小.
Dev-cpp的调试一直不是很好用,原因是它不是直接调试,而是调用了GDB这个命令行程序,
所以有的地方打不到断点, 有时有的语句并不执行,所以乱跳的感觉,实际上,只要仔细
观察一下,它不执行和不能打断点都是很有理由的,不像VC在空行上也可以打断点.
目标文件很大是因为标准IO库,新的标准IO库是全用模板生成的,所以静态库相当大.
而GCC一直没有把它做成动态库,所以每次程序都要联接到几百K.另外,GCC模板的生成也
很笨(或者说为了附合标准),所以目标程序很大.不过在mingw中有一个strip的程序.
可以为它减肥.
想要产生小的程序有几个方法:
0.优化程序!!!!
1.全部使用动态库,包括C运行库.
2.不要调试选项.
3.使用面向程序大小的的优化选项.

分享到:

欢迎光临我的博客
http://chinesedragon.blog.com.cn

0 条回复; 10 条/页;  1 / 1     第   ↑到页首
您未登陆,发帖前请填写:用户名 密码 注册新用户  
 回复: [转帖]Dev-cpp 小型指南,原载于CSDN论坛
排版
粗体斜体下划线居中飞翔文字移动文字发光文字阴影文字插入超级链接插入网页插入下载地址插入Email地址插入图片插入Flash插入RealPlay文件插入Media文件插入QuickTime影片插入背景音乐插入代码插入引用
插入表情:表情符号   使用帮助
内容 (8000字以内)
 
  关闭窗口  
[论坛列表]

小文诊所 创业经验
金融创新 家庭理财
居家旅行 国内资源
职业生活 配置应用
饮食文化 实盘记录
温情一刻 国外资源
法律频道 红旗社区
妇幼天地 商标标准
站务处理 蓝总看盘
奖励认证 开源软件
故障咨询 求助中心
公益活动 手机软件
网络经济 文史研究
期货专版 代理试用
网页制作 人才交流
分类广告 房产观澜
体育资讯 雅瑟风流
初学园地 美术贴图
股海风云 听风茶轩
管理学院

[今日热帖]

关于文逸 | 小文论坛 | 文逸博客 | 文逸金融 | 精华文章网站地图 | 联系我们 | 隐私保护
 Copyright© WWW.WONYEN.NET 2003 - 2021  闽ICP备09016518号-16   本站最高 10508 人同时在线,发生时间 2005-5-17 5:09:15 
 文逸科技 制作维护