社区
C语言
帖子详情
300分求解,提供线索者50分!
lolin
2001-08-12 10:50:05
谁知道 gcc 编译、链接的 程序 及 库 的详细格式!
...全文
141
11
打赏
收藏
300分求解,提供线索者50分!
谁知道 gcc 编译、链接的 程序 及 库 的详细格式!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
songgz
2001-08-16
打赏
举报
回复
旁观
lolin
2001-08-16
打赏
举报
回复
thanks!
对不起,我想要的是文件格式!
alloscdeveloper
2001-08-13
打赏
举报
回复
or look gcc's developer guide
alloscdeveloper
2001-08-13
打赏
举报
回复
man gcc
seedundersnow
2001-08-13
打赏
举报
回复
听课
lbqsv
2001-08-13
打赏
举报
回复
1.根据使用字符串界面的经验可能可以这样 gcc -?或者gcc 等类似,必然会有些提示信息的。在没辙的话:那就只好man 了。
2.vc的参数:msdn有叙述,cl.exe
lpt
2001-08-13
打赏
举报
回复
那谁知道VC编译的那些参数
Odysseus
2001-08-13
打赏
举报
回复
ELF和a.out
在Linux下,有两种可执行文件:ELF和a.out。有可能你的Linux只支持一种,有可能两种都支持。运行一下命令file,如果命令输出包含ELF,则支持ELF,如果包含Linux/i386,则支持a.out。
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\n");}' | gcc -E -v -
Reading specs from /usr/lib/gcc-lib/i486-box-linux/2.7.2/specs
gcc version 2.7.2
/usr/lib/gcc-lib/i486-box-linux/2.7.2/cpp -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 test.c
gcc -pg test.c
第一条命令告诉 GCC 编译 test.c 时为 prof 命令建立剖析(profile)信息并且把调试信息加入到可执行的文件里。 第二条命令只告诉 GCC 为 gprof 命令建立剖析信息。
没有选项时,GCC 会生成一个名为 a.out 的可执行文件。
用 -o 编译选项来为将产生的可执行文件用指定的文件名来命名。例如, 将一个叫 count.c 的 C 程序编译为名叫 count 的可执行文件, 要这样输入命令:
gcc -o count count.c
-c 选项告诉 GCC 仅把源代码编译为目标代码。缺省时 GCC 建立的目标代码文件有一个 .o 的扩展名。
-S 编译选项告诉 GCC 在为 C 代码产生了汇编语言文件后停止编译。 GCC 产生的汇编语言文件的缺省扩展名是 .s 。
-E 选项指示编译器仅对输入文件进行预处理。当这个选项被使用时, 预处理器的输出被送到标准输出而不是储存在文件里.
用 GCC 编译 C 代码时, 它会试着用最少的时间完成编译并且使编译后的代码易于调试。 易于调试意味着编译后的代码没有经过优化。必要时,需要让编译器对代码进行优化。
-O 选项告诉 GCC 对源代码进行基本优化。这些优化在大多数情况下都会使程序执行的更快。 -O2 选项告诉 GCC 产生尽可能小和尽可能快的代码。 -O2 选项将使编译的速度比使用 -O 时慢, 但通常产生的代码执行速度会更快。
GCC 支持数种调试和剖析选项,常用到的是 -g 和 -pg 。
-g 选项告诉 GCC 产生能被 GNU 调试器使用的调试信息以便调试你的程序。GCC 提供了一个很多其他 C 编译器里没有的特性, 在 GCC 里你能使 -g 和 -O (产生优化代码)联用。
-pg 选项告诉 GCC 在编译好的程序里加入额外的代码。运行程序时, 产生 gprof 用的剖析信息以显示你的程序的耗时情况。
Justin
2001-08-13
打赏
举报
回复
ya ~a
yinx
2001-08-13
打赏
举报
回复
找书!
lbqsv
2001-08-12
打赏
举报
回复
找书!
后续遍历线索二叉树 c 数据结构
c,数据结构 用c写的线索二叉树的创建,后续遍历,输出
C ++中的线索游戏
求解
器
线索游戏的小玩家
数独 自动
求解
软件 2.1版
本程序可以在几秒内自动
求解
数独, 但由于时间有限,它的功能不够完善,敬请原谅
微
分
方程
求解
(matlab)课设
微
分
方程
求解
(matlab)课设,需要在matlab7.0上运行,已经调试过了
方程组
求解
计算方法中大型发成组
求解
程序。
C语言
70,025
社区成员
243,254
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章