C语言程序编译、链接及调试常用命令

文章目录

  • 编译命令gcc
  • 链接命令ld
  • 调试命令
    • objdump
    • readlf

编译命令gcc

	生成汇编程序(.s)
		gcc -S [源文件名]
		gcc -S [源文件名] -o [目标文件名]
	生成目标文件(.o)
		gcc -c [源文件名]
		gcc -c [源文件名] -o [目标文件名]
	生成可执行文件(.exe / .out)
		gcc [源文件名]
		gcc [源文件名] -o [目标文件名]
	其余命令
		gcc --help

链接命令ld

	ld -static
		指定链接方式为静态链接
	ld -T [链接控制脚本]
		指定链接控制脚本
	ld -e [入口符号]
		指定程序入口符号
	ld -o [输出文件名]
		指定输出的文件名
	ld -L [搜索路径]
		添加需要链接的文件的搜索路径
	例
		ld -static -e main HelloWorld.o -o HelloWorld
		HelloWorld.o

调试命令

objdump

		objdump -a [文件名]
			将所有信息列出
		objdump -x [文件名]
			将文件所有头部段所有信息列出
		objdump -S [文件名]
			反汇编(含源码)
		objdump -t [文件名]
			列出符号表
		objdump -T [文件名]
			列出动态符号表
		objdump -r [文件名]
			显示重定位信息
		objdump -R [文件名]
			显示动态链接重定位信息
		objdump -j [文件名]
			显示指定名称的段的信息
		objdump -l [文件名]
			用文件名和行号标注相应的目标代码
		objdump -F [文件名]
			显示在文件中的偏移地址

readlf

		readlf -a [文件名]
			显示全部信息
		readlf -h [文件名]
			显示ELF文件开始的文件头信息
		readlf -S [文件名]
			显示节头信息
		readlf -g [文件名]
			显示节组信息
		readlf -V [文件名]
			显示版本段的信息

你可能感兴趣的:(程序语言基础,c语言,linux,开发语言)