Linux下编译C/C++程序的基本教程及常用命令

分类:知识百科 日期: 点击:0

包括编译程序、链接程序、编译及链接参数以及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文件的文件名。

以上就是,希望能够帮助到大家。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。