程序从源代码到可执行程序所要经过的步骤
语言的分类:
- 解释性语言
解释性语言 -通过编译器-> 可执行程序文件(机器语言) 包括(库(动态库,静态库))
C C++ java C# objective-c等等 - 脚本语言
源代码就是可执行程序文件
shell javascript python等 - 超文本语言
HTML
Ubuntu共享文件夹的默认位置
cd /mnt/hgfs/
程序从源代码到可执行程序中间经历的步骤
- 预处理
预处理指令的执行 宏的展开(简单的替换)
gcc -E *.cgcc -E test.c #将生成的文件内容重定向到test.txt gcc -E test.c > test.txt #查看文件的内容 cat test.txt
- 预编译
- 编译
语法检查 程序优化
生成目标程序 *.o文件(二进制文件)
gcc -c *.c#可以直接指定输出的文件名 gcc -c test.c -o a.o #输出汇编文件 gcc -S test.c
- 链接
将多个目标程序(包括库)链接成一个可执行程序文件
gcc *.o -o *.exe#直接输出*.exe文件 gcc test.o -o test.exe #默认输出一个a.out文件 #文件的运行 ./a.out ./test.exe
本文如有错误还请大佬们指正