zoukankan      html  css  js  c++  java
  • g++/gcc命令及使用

    gcc/g++在执行编译工作的时候,总共需要4步
    ⒈预处理,生成.i的文件[预处理器cpp]
    ⒉将预处理后的文件转换成汇编语言,生成文件.s[编译器egcs]
    ⒊由汇编变为目标代码(机器代码)生成.o的文件[汇编器as]
    ⒋连接目标代码,生成可执行程序[链接器ld]
    参数详解
    -x language filename
    设定文件所使用的语言,使后缀名无效,对以后的多个有效。也就是根据约定C语言的后缀名称是.c的,而C++的后缀名是.C或者.cpp,如果
    你很个性,决定你的C代码文件的后缀名是.pig 哈哈,那你就要用这个参数,这个参数对他后面的文件名都起作用,除非到了下一个参数
    的使用。
    eg:g++ -x c++ hello.pig
    -x none filename(关掉上一个选项,也就是让gcc根据文件后缀名自动识别文件类型)
    eg:g++ -x c++ hello.pig -x none hello2.cpp
    -c
    只激活预处理,编译和汇编,也就是只生成obj文件
    eg:g++ -c hello.cpp
    -S
    只激活预处理和编译,就是只把文件编译成汇编代码
    eg:g++ -S hello.cpp
    -E
    只激活预处理,这个不生成文件,需把它重定向到一个输出文件中。
    eg:g++ -E hello.cpp > hello.txt
    eg:g++ -E hello.cpp | more   (命令行中查看)
    -o
    制定 目标名称,缺省的g++编译出来的文件是a.out
    eg:g++ -o  hello hello.cpp
    eg:g++ hello.cpp -o hello
    -O0,-O1,-O2,-O3
    编译器优化选项的4个级别,-O0表示没有优化,-O1为缺省值,依次递增


  • 相关阅读:
    ruby安装方法
    移动端适配问题px->rem方法
    判断元素阶段类型
    domReady
    电梯导航
    判断浏览器的版本以及浏览器内核( 转发 )
    AWS
    Amazon S3
    Pipeline 模型
    RESTful API
  • 原文地址:https://www.cnblogs.com/garfieldx/p/3381471.html
Copyright © 2011-2022 走看看