程序员自我修养链接库笔记

第二章节:

1.预编译:gcc -E cwj.cpp -o cwj.i  展开宏,删除空格字符,添加行号,去除所有的注释

2.汇编: gcc -S cwj.i -o cwj.s 

3. 可执行: gcc -c cwj.s -o cwj.o       as cwj.s -o cwj.o   as是汇编器

4.链接: ld  -static 1.o 2.o 3.o 4.o    得到a.out可执行程序咯

5.  0扫描 1词法分析 2语法分析 3语义分析 :静态语义是在编译的时候可以检查的,动态语义在运行时才能够检查的 4中间语言生成:源码优化,代码生成,目标代码优化 5.链接程序,因为有些目标文件的变量会定义在其他的模块中,这个时候就需要靠链接实现了。

6.链接就是模块拼接的过程。链接过程主要包括了地址和空间分配,符号决议和重定位等这些步骤。

第三章节:

1.目标文件:就是没有链接的中间文件。经过链接之后就成了可执行文件了。哈哈

2.file命令可以查看文件的格式是什么格式。

你可能感兴趣的:(程序员自我修养链接库笔记)