包括编译程序、链接程序、编译及链接参数以及makefile的使用等。
编译程序
Linux下的编译程序主要有GCC(GNU Compiler Collection)、G++(GNU C++ Compiler)、g77(GNU Fortran 77 Compiler)、gcj(GNU Compiler for Java)等,其中GCC是最常用的,能够编译C/C++/Objective-C/Fortran等语言,使用GCC编译C/C++程序的命令格式如下:
gcc [options] file1.c [file2.c ...] -o output
其中options为编译参数,file1.c为源文件,output为可执行文件。
链接程序
Linux下的链接程序主要有ld(GNU Linker)、g++(GNU C++ Linker)等,其中ld是最常用的,使用ld链接C/C++程序的命令格式如下:
ld [options] file1.o [file2.o ...] -o output
其中options为链接参数,file1.o为目标文件,output为可执行文件。
编译及链接参数
编译及链接参数可以控制编译程序及链接程序的行为,常用的编译及链接参数有:
- -g:生成调试信息,便于gdb调试。
- -Wall:显示所有警告信息。
- -O:优化编译,可以指定优化等级,O0表示不优化,O1表示简单优化,O2表示中等优化,O3表示高级优化。
- -I:指定头文件所在的目录。
- -L:指定库文件所在的目录。
- -l:指定要链接的库文件。
- -static:静态链接库文件。
- -shared:动态链接库文件。
makefile的使用
makefile是一种文本文件,用于控制编译程序及链接程序的行为,makefile的格式如下:
target: dependency command
其中target表示目标文件,dependency表示依赖文件,command表示编译或链接的命令,使用makefile编译C/C++程序的命令格式如下:
make -f makefile
其中makefile为makefile文件的文件名。
以上就是,希望能够帮助到大家。