易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux下GCC编程四个过程(2)


2)编译阶段
(Compiling)
第二步进行的是编译阶段,在这个阶段中,Gcc首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,Gcc把代码翻译成汇编语言。用户可以使用”-S”选项来进行查看,该选项只进行编译而不进行汇编,生成汇编代码。
选项 -S
用法:[root]# gcc –S hello.i –o hello.s
作用:将预处理输出文件hello.i汇编成hello.s文件。
[root@richard hello-gcc]# ls
hello.c  hello.i  hello.s
如下为hello.s汇编代码
[root@richard hello-gcc]# vi hello.s
.file   "hello.c"
.section    .rodata
.LC0:
.string "hello world!\r\n"
.text
.globl main
.type   main,@function
main:
pushl   %ebp
movl    %esp, %ebp
subl    $8, %esp
andl    $-16, %esp
movl    $0, %eax
subl    %eax, %esp
subl    $12, %esp
pushl   $.LC0
call    printf
addl    $16, %esp
movl    $0, %eax
leave
ret
.Lfe1:
.size   main,.Lfe1-main
.ident  "GCC: (GNU) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)"
3)汇编阶段(Assembling)
汇编阶段是把编译阶段生成的”.s”文件转成二进制目标代码.
选项 -c
用法:[root]# gcc –c hello.s –o hello.o
作用:将汇编输出文件test.s编译输出test.o文件。
[root]# gcc -c hello.s -o hello.o
[root]# ls
hello.c  hello.i  hello.o  hello.s


相关文档:

Linux中通过locale来设置字符集


在Linux
中通过locale
来设置程序运行的不同语言环境,locale
由ANSI C
提供支持。locale
的命名规则为<
语言>_<
地区>.<
字符集编码>
,如zh_CN.UTF-8
,zh
代表中文,CN
代表大陆地区,UTF-8
表示字符集。在locale
环境中,有一组变量,代表国际化环境中的不同设置:
1.  & ......

linux下的vivi、内核、root的安装步骤与测试

烧写2410-S linux 操作系统:
在windows xp下进行,需要的文件在光盘中的img目录和flashvivi目录下提供。
烧写2410-S linux 操作系统包括烧写vivi,kernel,root三个步骤,除此我们还要烧写yaffs.tar,这四个文件在img目录中。
vivi ----linux操作系统启动的bootloader;     
zImage----linu ......

Linux 信号(简略笔记)

    一、概要
      详细介绍:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index1.html
       信号是UNIX和Linux系统响应结条件而产生的一个事件。接收到信号的进程会相应地采取一些行动。
    (1) 在系统 ......

[转]Linux操作系统下/etc/hosts文件配置方法

1. 关于/etc/host,主机名和IP配置文件
Hosts - The static table lookup for host name(主机名查询静态表)
Linux 的/etc/hosts是配置ip地址和其对应主机名的文件,这里可以记录本机的或其他主机的ip及其对应主机名。不同的linux版本,这个配置文件也可能不同。比如Debian的对应文件是/etc/hostname。
2. 配置文件 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号