嵌入式Linux应用开发学习记录(编程基础)

C/C++文件 ->可执行文件需4步:

1.预处理:处理include、宏定义、条件编译,输出 .i 文件

2.编译:把C翻译成汇编

3.汇编:汇编翻译成机器代码(OBJ文件)

4.连接:将上面生成的OBJ和库的OBJ连接,生产可执行文件

编译和运行:

$  sudo gcc -o sh sheep.c  #输出了可执行文件
$  ./sh  #运行可执行文件

$ sudo gcc -v -o sh sheep.c  #显示编译细节

$ sudo cpp -o sheep.i sheep.c #预处理,输出了 sheep.i

$ sudo gcc -Wall sheep.c   #看警告

 

连接器选项:

加-nostartfiles不连接系统标准启动文件,编译bootloader、内核时用。

加-nostdlib不连接系统标准启动文件和标准库文件,编译bootloader、内核时用。


$ find -name "sheep.c"   #查找文件
$ grep "sheep" * -nR      #查找含有某个字符串的文件
 

 

vim makefile:

目标: 依赖1 依赖2...

        命令

当前目标下执行sudo make

 

打补丁:

$patch -px < ../补丁文件     #px的x是忽略补丁指示的第x个目录

 

 

你可能感兴趣的:(linux)