当前位置:首页 » 专业资讯
开发技术指南» 文章正文
    引言: “UNIX系统开发-gcc参数详解"学习笔记对于程序员来说,编译器的重要性不容置疑,深入了解译器是对工作大有帮助的,所以写下这个学习笔记,希望能借此学到更多东西。
 

 

    摘要:作者:xdkui 第一次在debian下装xfree86,startx启动了twm,装了gnome 后startx启动了gnome环境,为什么?装gnome 时修改了什么文件以及x环境是怎么起来的?本来是想搞清这几个文题开始研究这个题目的,没想到还学到了很多别的东西^_^本文主要说明x window system的基本运行原理,其启动过程,及常见的跨网络运行x window system。 一) 基本运行原理 x window system采用c/s结构,......
 ·the solaris安全faq    »显示摘要«
    摘要:创建时间:2000-05-06文章属性:整理文章提交:quack (quack_at_xfocus.org)the solaris安全faq by quack 参考资料:the solaris security faq by peter baer galvin1) (概述--略)2) 怎样将solaris配置得更加强壮? 2.1) 哪些文件的许可权限需要改变? 有个叫fix-modes的软件(ftp://ftp.fwi.uva.nl/pub/solaris......


“UNIX系统开发-gcc参数详解"学习笔记

gcc最早是richard stallman在十几年前编写的针对于c的编译器,意思即为gnu c compiler,后来发展支持ada,c++,java,objective c,pascal,cobol,以及支持逻辑编程的mercury语言,后来其英文原名变为:gnu compiler ollection([1]).除此之外,gcc对于各种硬件平台都提供了完善的支持。

对于程序员来说,编译器的重要性不容置疑,深入了解译器是对工作大有帮助的,所以写下这个学习笔记,希望能借此学到更多东西。 【相关文章:英语四六级考试再次泄题有关部门表示彻查(

“unix系统开发-gcc参数详解"学习笔记 【扩展阅读:Mandrake 寻求在华合资 与国内企

我的email:  jasonme@emails.bjut.edu.cn 【扩展信息:Linux Integration Gu

偶然看到这篇文章,边读边记录一下自己的阅读笔记,希望能得到更多收获,也希望能为读这篇文章的人以帮助,建议大家读原文,以得到更多收获,感谢email为pianopan@beeship.com的gg写这篇文章,给我有机会继续了解编译器的参数问题。

文中基本上按原本的架构走,对一些细节的地方进行了祥细的解释,有些细节配上了例子,以方便理解,希望能有些帮助。

主要参考文献请见: http://www.chinaunix.net/jh/7/235728.html

一.gcc历史

gcc最早是richard stallman在十几年前编写的针对于c的编译器,意思即为gnu c compiler,后来发展支持ada,c++,java,objective c,pascal,cobol,以及支持逻辑编程的mercury语言,后来其英文原名变为:gnu compiler ollection([1]).除此之外,gcc对于各种硬件平台都提供了完善的支持。

一般的,gcc的编译功能包括gcc(c的编译器),g++(c++的编译器),在编译过程中,一共有四步工作。

1.预处理,生成i文件,c文件编译为.i文件,c++文件编译为.ii文件,它们都为源程序的预处理结果文件.以最简单的hello world程序为例:

*********************************

// test.c

#include "stdio.h"

#define max 9

int main()

{

 int a;

 a=max;

 printf("hello worldn");

}

*********************************

用cpp test.c test.i  可得到预处理文件test.i,通过查看该文件,我们可以看到,我们引入的include文件已经被引入处理,define定义的部分已经被完全带入。

2.预处理文件转换成汇编语言,生成.s文件。这一步利用egcs来完成(在mingw标准包中没有见到这个预编译器,所以测试没有成功,将继续测试)

3.汇编变为目标文件,生成.o文件,利用as来完成。

4.连接目标文件,生成可执行程序,利用ld来完成.(后续继续研究ld编译过程。)

二.gcc参数祥解

-x language filename

 设定文件使用的语言,这样源程序的后缀名无效了,并对gcc后接的多个编译文件都有效。这样如果存在.c与.cpp文件联编会有问题,解决这个问题用到了下一个参数 -x none filename,在下面做介绍。
...   下一页
 ·让我的konqueror显示中文网页    »显示摘要«
    摘要:只是为了让浏览器显示中文,没有其他的美化成分。做法很简单:首先su到root用户,挂载win下的c盘mount /dev/hda1 /mnt/c (前提是你内核支持ntfs如2.6的)#cp /mnt/c/windows/fonts/simsun.ttf /usr/share/fonts/truetype/然后打开kde的control center中的字体管理器>>添加字体,选择刚才复制的文件夹然后重启kde(*这步很重要)。打开konque......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE