频道栏目
首页 > 资讯 > 其他 > 正文

开发工具gcc编译方法

18-06-29        来源:[db:作者]  
收藏   我要投稿

gcc [选项] [文件][-o 文件]

预处理:处理#开头的语句;

目标文件:源文件的二进制文件;

链接:目标文件与附加的目标文件进行链接;

文件后缀都是小写,预处理参数大写E,编译参数大写S,汇编参数小写c。

【单文件】

gcc test.c –o test

预处理: gcc –E test.c –o test.i

编译: gcc –S test.i –o test.s gcc –S test.c –o test.s

汇编: gcc –c test.s –o test.o gcc –c test.i –o test.o gcc –c test.c –o test.o

链接: gcc test.o –o test gcctest.s –o test gcc test.i –o test

优化: gcc –o1 test.c –o test(优化编译程序,级别1~3,级别越大效果越好编译时间越长)

【多文件】

一步gcc test1.c test2.c –o test

多步gcc –c test1.c –o test1.o gcc –c test2.c –o test2.o gcc test1.o test2.o –o test

【检错】

gcc –pedantic test.c –o test 检查不符合ANSI/ISOC标准的代码

gcc –Wall test.c –o test 产生尽量多的警告

gcc –Werror test.c –o test 所有警告之处停止编译,必须进行修改

【库文件链接】

Linux下先调用动态链接库(.so),若无则用静态库(.a),库文件后要跟具体文件名。

头文件include:-I /usr/…/include -I /usr/…/include

库文件lib:-L /usr/…/lib-lmysqlclient -… -L /usr/…/lib -lmysqlclient-…

强制使用静态链接库:-static

【gcc与g++区别】

gcc看.c文件为C文件,看.cpp文件为C++文件;g++看.c/.cpp都为C++文件。

gcc只能对C++文件进行编译,而不能链接,所以需采用g++链接。

C文件/C++文件中有无extern C,与使用gcc/g++并无任何关系。

故最方便的方式是C文件采用gcc编译链接,C++文件采用g++编译链接。

【其他】

-O/-O2:优化程序

-DMACRO等于#define MACRO

相关TAG标签
上一篇:junit5 入门系列教程之参数化测试解决方案(Parameter Resolution)
下一篇:Python遍历dictionary的keys实现教程
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站