源程序的编译 在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器.   下面我们以一个实例来说明如何使用gcc编译器.

假设我们有下面一个非常简单的源程序(hello.c或者hello.cpp): 
#include <stdio.h>
int   main(int   argc,char   **argv)
{

printf("Hello   Linux \n");
    return 0;
}

要编译这个程序,我们只要在命令行下执行:

gcc   -o   hello   hello.c 
或者

g++   -o   hello   hello.cpp

gcc   编译器就会为我们生成一个hello的可执行文件.执行./hello就可以看到程序的输出结果了.命令行中   gcc表示我们是用gcc来编译我们的源程序,-o   选项表示我们要求编译器给我们输出的可执行文件名为hello   而hello.c是我们的源程序文件.

gcc编译器有许多选项,一般来说我们只要知道其中的几个就够了.   -o选项我们已经知道了,表示我们要求输出的可执行文件名.   -c选项表示我们只要求编译器输出目标代码,而不必要输出可执行文件.   -g选项表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信息.

知道了这三个选项,我们就可以编译我们自己所写的简单的源程序了,如果你想要知道更多的选项,可以查看gcc的帮助文档,那里有着许多对其它选项的详细说明.

Linux下面makefile编写相关推荐

  1. Linux下Makefile编写语法

    原创 Linux下Makefile编写语法 2016-07-29 08:31:53 Datrilla 阅读数 1386更多 分类专栏: Linux Makefile 版权声明:本文为博主原创文章,遵循 ...

  2. linux 建立伪目标过程,linux之Makefile 编写、规则、伪目标、变量

    什么是Makefile?首先,make是一个工具程序(Utility software),是一种控制编译或者重复编译软件的工具:make可以自动管理软件编译的内容.方式和时机从而使程序员能够把精力集中 ...

  3. Linux基础——makefile编写

    Makefile基本原则和原理 makefile中的三要素:目标.依赖.命令 目标:要生成的目标文件(在Makefile中会把第一个目标作为终极目标,一切以生成终极目标为最终目的) 依赖:生成目标文件 ...

  4. linux下MaKefile编写

    Linux下编写 makefile 详细教程 近期在学习Linux下的C编程,买了一本叫<Linux环境下的C编程指南>读到makefile就越看越迷糊,可能是我的理解能不行. 于是goo ...

  5. 【linux】Makefile编写

    1.在linux环境下使用GNU的make工具能够比较容易构建一个属于自己的工程 ,整个工程的编译只需要一个命令就可以完成编译.链接.这依赖于Makefile 文件. 2.Makefile的用途    ...

  6. 【开发工具】之linux下makefile编写

    序 在实际工程中,我们通常使用makefile来构建目标文件,本文旨在示例一个简单的makefile,可根据实际需要更改. 1. 配置相关的宏在config.mk中 新建config,mk #检测系统 ...

  7. linux 生成和使用动态链接库和静态链接库的Makefile编写

    引用 Jesse Rei 的 linux 生成和使用动态链接库和静态链接库的Makefile编写 生成和使用动态链接库和静态链接库的Makefile编写 1. 概述 介绍linux下生成和使用动态链接 ...

  8. Linux平台Makefile文件的编写基础篇和GCC参数详解

    问:gcc中的-I.是什么意思....看到了有的是gcc -I. -I/usr/xxxxx..那个-I.是什么意思呢 最佳答案 答:-Ixxx 的意思是除了默认的头文件搜索路径(比如/usr/incl ...

  9. Linux C编程Makefile编写初步-转

    Linux C编程Makefile编写初步 假设我们有下面这样的一个程序,源代码如下:  /* main.c */  #include "mytool1.h"  #include  ...

最新文章

  1. centos上安装zookeeper
  2. 飞机上为啥禁止使用手机?
  3. 让Python不在mac的dock上显示火箭图标
  4. 《web前端课堂》正式上线啦!
  5. ZZULIOJ 1109: 数根(函数专题)
  6. go excel换行符替换_微软Excel与WPS Excel哪个好玩?
  7. 持续集成部署Jenkins工作笔记0004---Subversion环境要求
  8. 如何按页进行PDF文档拆分
  9. 乔姆斯基生成语法_乔姆斯基的转换生成语法理论
  10. scanf 详解 - 你所不知道的scanf用法
  11. VproC#混合编程,加载图片
  12. 考试一定要加文操..
  13. 电脑卸载神器 | 只有极客才会使用的卸载软件Geek Uninstaller
  14. 我的面试题. 业务抽象能力测试.
  15. 【为生活开发系列之二】Android微信新版全自动抢红包助手
  16. 对imp中的fromuser参数的偏差理解
  17. 2019年高中数学复习必备——解析几何
  18. ASP动态网页生成静态Html网页代码
  19. 盖档案骑缝章的样本_盖印鉴骑缝章的技巧 涨知识了
  20. LOTO 示波器—安卓手机示波器如何使用?

热门文章

  1. Requests库网络爬虫实战
  2. 洛谷2055 [ZJOI2009]假期的宿舍
  3. 生成跨语言的类型声明和接口绑定的工具(Djinni )
  4. 作业三--阅读《构建之法》1-5章
  5. VC/MFC列表CListCtrl类的LVCOLUMN和LVITEM详解
  6. 计算输入序列能组成三角形的个数
  7. 无法打开登录所请求的数据库DbName 。登录失败。 用户 'IIS APPPOOL\DefaultAppPool' 登录失败。 的解决方案...
  8. sql server相关的命令行
  9. 指针类型和指针类型转换的理解
  10. mfc 创建线程函数AfxBeginThread,线程中访问mfc控件