1 / 22
文档名称:

关于gdb和shell.doc

格式:doc   大小:49KB   页数:22页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

关于gdb和shell.doc

上传人:phljianjian 2017/3/29 文件大小:49 KB

下载得到文件列表

关于gdb和shell.doc

相关文档

文档介绍

文档介绍:关于 gdb 和 shell 标题: Linux 下的 C++ 编程----------------------------------------------------------- --------------------- Linux 下的 C++ 编程 ELF 和 在 Linu x下, 有两种可执行文件: ELF和 。有可能你的 Linu x 只支持一种,有可能两种都支持。运行一下命令 file ,如果命令输出包含 ELF ,则支持 ELF ,如果包含 Linux/i386 ,则支持 。 GCC 版本使用下面命令,可以知道它的版本: gcc -v GCC 安装后目录结构/usr/lib/gcc-lib/target/version/ ( 及子目录) 编译器就在这个目录下。/usr/bin/gcc 可以从命令行执行的二进制程序在这个目录下。/usr/target/(bin|lib|include)/ 库和头文件在这个目录下。/lib/,/usr/lib 和其他目录,系统的库在这些目录下。符号定义使用-V 开关,就能看到 GCC 定义的符号。参见下列实例: $ echo 'main(){printf("hello world");}' | gcc -E -v- Reading specs from /usr/lib/gcc-lib/i486-box-linux/ gcc version /usr/lib/gcc-lib/i486-box-linux/ -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=7 -D__ELF__ -Dunix -Di386 -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__linux__ -D__unix -D__i386 -D__linux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386) -D__i486__ - GCC 编译器使用简介通常后跟一些选项和文件名来使用 GCC 编译器。 gcc 命令的基本用法如下: gcc [options] [filenames] 选项指定编译器怎样进行编译。 GCC 选项 GCC 有 100 个编译选项。这些选项中的许多可能永远都不会用到,但一些主要的选项会经常遇到。很多的 GCC 选项包括一个以上的字符,因此必须为每个选项指定各自的连字符。例如, 下面的两个命令是不同的: gcc -p -g gcc -pg 第一条命令告诉 GCC 编译 时为 prof 命令建立剖析(profile) 信息并且把调试信息加入到可执行的文件里。第二条命令只告诉 GCC 为 gprof 命令建立剖析信息。没有选项时, GCC 会生成一个名为 的可执行文件。用-o 编译选项来为将产生的可执行文件用指定的文件名来命名。例如, 将一个叫 的C 程序编译为名叫 count 的可执行文件, 要这样输入命令: gcc -o count -c 选项告诉 GCC 仅把源代码编译为目标代码。缺省时 GCC 的扩展名。-S 编译选项告诉 GCC 在为 C 代码产生了汇编语言文件后停止编译。 GCC 。-E 选项指示编译器仅对输入文件进行预处理。当这个选项被使用时, 预处理器的输出被送到标准输出而不是储存在文件里. 用 GCC 编译 C 代码时, 它会试着用最少的时间完成编译并且使编译后的代码易于调试。易于调试意味着编译后的代码没有经过优化。必要时, 需要让编译器对代码进行优化。-O 选项告诉 GCC 对源代码进行基本优化。这些优化在大多数情况下都会使程序执行的更快。-O2 选项告诉 GCC 产生尽可能小和尽可能快的代码。-O2 选项将使编译的速度比使用-O 时慢, 但通常产生的代码执行速度会更快。 GCC 支持数种调试和剖析选项,常用到的是-g和-pg 。-g 选项告诉 GCC 产生能被 GNU 调试器使用的调试信息以便调试你的程序。 GCC 提供了一个很多其他 C 编译器里没有的特性,在 GCC 里你能使-g和-O( 产生优化代码) 联用。-pg 选项告诉 GCC 在编译好的程序里加入额外的代码。运行程序时, 产生 gprof 用的剖析信息以显示你的程序的耗时情况。用 gdb 调试 GCC 程序 Linux 包含了一个叫 gdb 的 GNU 调试程序。在程序运行时能观察程序的内部结构和内存的使用情况。以下是