ubuntu下C语言程序的开发(二)——gcc的使用

  • gcc编译c语言的过程经历一下步骤
  1. 预处理:分析各种命令,比如 #define、#include等。gcc通过调用 cpp 程序来进行预处理工作。
  2. 编译:根据输入文件产生汇编语言,由于一般是立即调用汇编程序,所以其输出一般不保存在文件中。gcc调用 ccl 进行编译工作。
  3. 汇编:将汇编语言用作输入,产生 .o 扩展名的目标文件。gcc调用 as 进行汇编工作。
  4. 链接:各个目标文件被放在可执行文件的适当位置上,该程序引用的函数也放在可执行文件中。gcc调用链接程序 ld 来完成最终的任务。
  • gcc 的基本使用方式:
gcc [选项] 文件名

   【说明】

    1. 可以根据选项对程序的生成进行全面控制。命令选项可以组合使用,在使用时,每个选项都要有一个自己的连字符“-”。

    2. 在ubuntu(linux)下生成的可执行文件没有固定的扩展名,任何符合linux要求的文件名,只要文件的访问属性中有可执行的属性,该文件就是可执行的。

    3. gcc按照命令选项的要求对输入的文件进行处理,形成结果输出文件。

    4. 输入的文件不一定是C语言源文件,还可能是预处理文件、目标文件等。如何确定输入文件的类型,gcc 是通过输入文件的拓展名来确定的,下图列出部分       相关拓展名。

        

时间: 2024-09-29 00:23:13

ubuntu下C语言程序的开发(二)——gcc的使用的相关文章

(4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤

Ubuntu下配置opencv3.1.0开发环境 1.最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享 2.步骤说明 一.安装OpenCV3.1.0 1.使用wget下载opencv源码 url : https://github.com/Itseez/opencv/archive/3.1.0.zip sudo apt-get install wget sudo wget https://github.com/I

Ubuntu下的用户和权限(二)

五.chown.chgrp命令 从名字就可以推测他们是干嘛的,但是这两个命令需要root权限. chown命令的格式为:chown user:group file  中间的user : group三项可以根据需要省略某部分.比如现在有个文件file属于用户bob,bob的权限是rwx,而bob属于组group1,group1的权限是r.有另外一个用户jack属于group2. chown jack file 这就把file的woner从bob改成了jack,但是file所属的群组仍然是group

Ubuntu下删除卸载程序图标

Ubuntu下删除卸载程序图标 方法一:直接在终端输入命令alacarte.可以任意增.改.隐藏.显示菜单,但无法删除菜单,即使拥有root权限. 方法二:注意几个目录和文件./usr/share/applications/下的desktop文件/usr/share/applications/mimeinfo.cache文件~/.local/share/applications下的desktop文件~/.local/share/applications/default.list目录下的文件~/.

Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法

Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法 最近由于老师要求要在Ubuntu下QT上进程多线程服务器的开发,虽然只是单纯的调用qt的network模块,但是为了避免麻烦,我还是很操蛋的在QT下写控制台程序了,但是写完程序后运行时出现了如下情况. 程序运行了,但是控制台中居然只有一个光标在那儿跳啊跳.由于百度的姿势不对,废了好多时间,终于明白是因为qt creator不支持Gnome默认的终端gnome-terminal. 所以要换成XTerm的控制台. 具体的解决方式

ubuntu下编译java程序

ubuntu下编译java程序 首先需要安装jdk,并配置好相应环境变量 下面以简单的HelloWorld为例 文件名为HelloWorld.java java代码: public class HelloWorld { public static void main(String args[]) { System.out.println("Hello World!"); } } 编译: javac HelloWorld.java 此时会在当前文件夹生成 HelloWorld.class

【转载】在Ubuntu下配置舒服的Python开发环境

在Ubuntu下配置舒服的Python开发环境 2013-10-26 00:10 11188人阅读 评论(0) 收藏 举报 目录(?)[+] Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的一个安装和配置步骤,基于 Ubuntu 12.04 桌面版本标准安装. 安装 Python 发布版本和 build 依赖包 建议至少安装 Python 2.7/3.2 版本,毕竟 Python 2.X/3.

Ubuntu下搭建Cocos2D-X 3.6开发环境

简单讲解在Ubuntu下搭建Cocos2D-X 3.6开发环境的过程,希望对大家有用. 1.解压下载的包,找到build目录: 在终端下先执行install-deps-linux.sh文件 结果类似: 时间可能比较长. 2.回到解压包的根目录下执行setup.py: 可以看出这个执行完成的是检测系统环境并在配置文件中加入需要的环境变量,会将原配置文件备份. 3.在解压包的目录运行 cmake . 注意后面代表当前目录的 . (不要在意sudo) 4.make 用cmake生成的Makefile就

Linux下C/C++程序调试基础(GCC,G++,GDB,CGDB,DDD)

在写程序的时候,经常会遇到一些问题,比如某些变量计算结果不是我们预期的那样,这时我们需要对程序进行调试.本文主要介绍调试C/C++在Linux操作系统下主要的调试工具. 在Linux下写程序,C/C++主要的编译器有GCC/G++,ICC等,像我等穷码农,最喜欢GCC了,很大原因是他免费!所以,我们以GCC/G++为例介绍主要的调试工具. 分以下几个内容介绍: 1.调试之前的工作 2.选择调试工具 3.调试步骤 点我,请帮我投一票! 调试之前的工作 编译器在编译阶段需要产生可供调试的代码,才能被

Ubuntu下用glade和GTK+开发C语言界面程序(二)——gcc常用命令介绍

谈到linux,没人不懂gcc,当然,学过C语言的都该知道gcc,毕竟所有的类C编译器基本都有gcc来构成. GCC的意思随着时间的发展也从最初的GNU C Compiler发展到GNU Compiler Collection,也就是GNU编译器的统称集合.GCC对与操作系统与硬件的的支持,可以说是:无处不在. 一.gcc编译过程 GCC的编译过程要分为四个阶段来进行:预处理阶段,编译阶段,汇编阶段,以及链接阶段. 1.预处理阶段(也称预编译阶段) gcc -E helloworld.c -o