c程序编译步骤详解

c程序编译步骤详解

ID:8793523

大小:36.50 KB

页数:5页

时间:2018-04-07

c程序编译步骤详解_第1页
c程序编译步骤详解_第2页
c程序编译步骤详解_第3页
c程序编译步骤详解_第4页
c程序编译步骤详解_第5页
资源描述:

《c程序编译步骤详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、C/C++程序编译步骤详解新一篇: MakefileC/C++语言很多人都比较熟悉,这基本上是每位大学生必学的一门编程语言,通常还都是作为程序设计入门语言学的,并且课程大多安排在大一。刚上大学,孩子们还都很乖,学习也比较认真,用心。所以,C/C++语言掌握地也都不错,不用说编译程序,就是写个上几百行的程序都不在话下,但是他们真的知道C/C++程序编译的步骤么?我想很多人都不甚清楚,如果他接下来学过“编译原理”,也许能说个大概。VC的“舒适”开发环境屏蔽了很多编译的细节,这无疑降低了初学者的入门门槛,但是也“

2、剥夺”了他们“知其所以然”的权利,致使很多东西只能死记硬背,遇到相关问题就“丈二”。实际上,我也是在学习Linux环境下编程的过程中才逐渐弄清楚C/C++源代码是如何一步步变成可执行文件的。总体来说,C/C++源代码要经过:预处理、编译、汇编和连接四步才能变成相应平台下的可执行文件。大多数时候,程序员通过一个命令就能完成上述四个步骤。比如下面这段C的“Helloworld!”代码:File:hw.c#includeintmain(intargc,char*argv[]){      pri

3、ntf("HelloWorld!");      return0;}如果用gcc编译,只需要一个命令就可以生成可执行文件hw:xiaosuo@gentuxhw$gcc-ohwhw.cxiaosuo@gentuxhw$./hwHelloWorld!我们可以用-v参数来看看gcc到底在背后都做了些什么动作:Readingspecsfrom/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/specsConfiguredwith:/var/tmp/portage/sys-devel/gc

4、c-3.4.6-r2/work/gcc-3.4.6/configure--prefix=/usr--bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.4.6--includedir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include--datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6--mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/

5、man--infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/info--with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include/g++-v3--host=i686-pc-linux-gnu--build=i686-pc-linux-gnu--disable-altivec--enable-nls--without-included-gettext--with-system-zli

6、b--disable-checking--disable-werror--enable-secureplt--disable-libunwind-exceptions--disable-multilib--disable-libgcj--enable-languages=c,c++,f77--enable-shared--enable-threads=posix--enable-__cxa_atexit--enable-clocale=gnuThreadmodel:posixgccversion3.4.6(

7、Gentoo3.4.6-r2,ssp-3.4.6-1.0,pie-8.7.10)/usr/libexec/gcc/i686-pc-linux-gnu/3.4.6/cc1-quiet-vhw.c-quiet-dumpbasehw.c-mtune=pentiumpro-auxbasehw-version-o/tmp/ccYB6UwR.signoringnonexistentdirectory"/usr/local/include"ignoringnonexistentdirectory"/usr/lib/gcc

8、/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/include"#include"..."searchstartshere:#include<...>searchstartshere:/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include/usr/includeEndofsearchlist.GNUCversion3.

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

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

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