• gcc编译器


    gcc/g++在执行编译的时候,只要分四个阶段 :
    1、预处理阶段,完成宏定义和include文件展开等工作;                                 [预处理器cpp]
    2、根据编译参数进行不同程度的优化,编译成汇编代码,生成.s的文件 ;             [编译器egcs]
    3、用汇编器把汇编代码进一步生成目标代码,生成.o的文件;                          [汇编器as]
    4、用连接器把生成的目标代码和系统或用户提供的库连接起来,生成可执行文件; [链接器ld] 

    gcc常用编译选项:
    -E               只运行C预编译器cpp,不生成文件
    -S               只把文件编译成为汇编代码
    -c                只生成object文件,不链接
    -o                生成指定的输出文件
    -g                生成可被gdb使用的标准调试信息
    -IDIR           指定额外的头文件搜索路径DIR
    -LDIR           指定额外的库函数搜索路径DIR
    -lLIBRARY    指定链接时需要的其它函数库“ LIBRARY”
    -w               不生成任何警告信息
    -Wall           生成所有级别的警告信息
    -shared       生成支持动态共享库的执行文件
    -static         不支持动态共享库,把函数库内容静态链接到可执行程序中
    -O0             不进行代码优化处理
    -O,O1         进行一般优化,减少大小和时间
    -O2              进一步优化,一般在内核编译时使用
    -O3              较-O2进一步优化 

  • 相关阅读:
    Eclipse Plugin for Hadoop
    Hadoop伪分布模式配置
    Hadoop单机模式配置
    20180711-Java Number类
    20180711-Java分支结构 – if…else/switch
    20180709-Java循环结构
    20180708-Java运算符
    20180708-Java修饰符
    20180708-Java变量类型
    20180705-Java对象和类
  • 原文地址:https://www.cnblogs.com/amanlikethis/p/3344667.html
Copyright © 2020-2023  润新知