zoukankan      html  css  js  c++  java
  • linux之Gcc使用

    本篇文章摘自 http://blog.csdn.net/ljzcom/article/details/7213101

    对于Gcc自带的很多命令行,只有具体编程里面用到了或者看到别人真真用到的,用的目的很清楚,才有价值记录下来,常用的记在脑子里面,这就够了。对于Linux基本编程工具的总结,之前都是总结在有道云笔记里面,觉的,那里面的太封闭了,写的好不好,只有自己知道。自己一直秉持着技术开放的心态,能够清晰的讲解出来的技术,才是你真正消化吸收的东西。

      Gcc功能介绍

       Gcc编译器完成从原始的C、C++、Objective-C等源文件向运行在特定CPU硬件上的目标代码的转换,对于待处理的文件,通过文件后缀名来识别。

           Gcc能够处理的后缀有*.c,*.cpp,*.c(面向对象的C),*.s汇编语言,*.h(头文件)

           目标文件可以是 *.o 目标文件,*.a库文件。

       一个完整的编译流程,具体分为预处理—>编译-->汇编--->链接

    在这里,暂时只介绍非常常用的编译选项,以后用到什么选项时,会表明使用场景和对象,知道特定场景下的特定选项的作用,就可以了。

           -E : 只把源文件进行预处理

       -S : 只把源文件进行预处理和编译

       -c :  只把源文件进行预处理、编译和汇编

          -o  file : 把原文件进行预处理、编译、汇编和连接,最终生成可执行文件file(确实为a.out)

       -v : 把编译过程中详细输出信息都打印出来

          -Dmacro :定义一个宏,名称为macro,值为1(-Dmacro = defn,值为defn)

      -Ldir : 增加搜索库文件路径dir

          -Idir : 增加搜索头文件路径dir

          -lfoo: 链接名为libfoo的函数库

          -Wall :打印出所有警告信息

      -g:打开调试开关

         -On:优化强度(n = 0,1,2,3,数字越大,强度越高)

  • 相关阅读:
    前端cookie操作用到的一些小总结
    sublime 官方正版,自己用的插件配置,最轻量级安装流程
    Node.js 终端输出颜色设置
    Mac中设置别名 (转载)
    Swift 3 使用objc_setAssociatedObject
    ruby 笔记
    编程模式
    rvm pod gem 等常用命令
    node.js 笔记
    Node.js 对象合并
  • 原文地址:https://www.cnblogs.com/cherishui/p/4032457.html
Copyright © 2011-2022 走看看