在linux下如何编译C++程序.docx

在linux下如何编译C++程序.docx

ID:53315129

大小:14.69 KB

页数:2页

时间:2020-04-03

在linux下如何编译C++程序.docx_第1页
在linux下如何编译C++程序.docx_第2页
资源描述:

《在linux下如何编译C++程序.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、在linux下如何编译C++程序  一、GCC(GNUCompilerCollection)是linux下最主要的编译工具,GCC不仅功能非常强大,结构也异常灵活。它可以通过不同的前端模块来支持各种语言,如Java、Fortran、Pascal、Modula-3和Ada  g++是GCC中的一个工具,专门来编译C++语言的。  GCC的参数有:(也是分步实现)  -E让GCC在预处理结束后停止编译g++-Ehello.cpp-ohello.i  -c将hello.i编译成目标代码g++-chello.i-ohello.o  将目标文件连接成可执

2、行文件g++hell.o-ohello  可以一步实现g++hello.cpp-ohello  二、假如有两个以上源文件应该一下编译。  一步就实现g++foo1.cppfoo2.cpp-ofoo  也可以分步实现g++-cfoo1.cpp-ofoo1.o  g++-cfoo2.cpp-ofoo2.o  g++foo1.ofoo2.o-ofoo  三、GCC一些常用选项  1、产生警告信息的选项大多数以-W开头其中有-Wall  g++-Wallhello.cpp-ohello  2、将所有的警告当成错误的选项-Werror  g++-Werr

3、orhello.cpp-ohello  3、寻找头文件选项-I(linux默认路径:头文件在/usr/include/下),不在这个路径下就要用-I指定。  gccfoo.cpp-I/home/include-ofoo  4、库依赖选项-L(linux默认路径:库文件在/usr/lib/下),不在这个路径下就要用-L指定。  g++foo.cpp-L/home/lib-lfoo-ofoo  库就是将源文件编译之后生成的目标文件的集合。  库命名以lib开头。  库有静态库(通常以.a结尾)和动态库(通常以.so结尾)  默认情况下,g++以动态

4、库形式连接。如果要静态库连接则要用-static指定(g++foo.cpp-L/home/lib-static-lfoo-ofoo)  5、优化选项-On(n取0到3之间)  四、介绍一些GNU二进制链工具  1、ar命令(也称为工具)可以用来编译成静态库  ar[-]{操作选项}{任选项}[成员名][count]archivefiles....  arrvlibtest.ahello.ohello1.o生成一个库名为test,该库中存放了hello.o和hello1.o这两个模块。  操作项:d(删除)、m(移动)、p(标准输出)、q(快速追

5、加)、r(在库中插入模块)、t(显示库的模块清单)、x(从库中提取一个成员)。  任选项:a(成员后面添加一个新文件)、b(成员前面添加一个新文件)、c(创建一个库)、f(截短指定名字)、v(显示执行操作选项的附加信息)。澳门新濠天地66bb.org  2、编译成动态库  分步完成:gcc-fPIC-cfunc.cpp-ofunc.o  gcc-shared-olibfunc.sofunc.o  一步就完成:gcc-fPIC-shared-olibfunc.sofunc.cpp

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。