g++
一般分为这几步:
1. 预处理,生成.i文件
2. 编译,生成.s文件(汇编文件)
3. 汇编,将汇编文件转化成.o文件(目标文件)
4. 连接目标代码,生成可执行文件
-c 激活预处理,编译,汇编,最后生成obj文件
-S 激活预处理,编译,最后生成.s汇编文件
-E 激活预处理,不生成文件,需要定位到一个输出文件里
-o 为结果文件命名
-O0
-O1
-O2
-O4
编译器的四个优化级别,-O0为没有优化,-O1为默认值,-O3为优化最高级别。
对于valgrind来说,-O0是最喜欢的,只是速度较慢。-O1相对-O0来说错误信息可能不够完整,但一般来说表现良好。-O2就不推荐了。
-Wall 使g++能够产生尽可能过的警告消息
对于多个文件:
g++ foo1.cc foo2.cc -o foo
相当于:
g++ foo1.cc -o foo1.o
g++ foo2.cc -o foo2.o
g++ foo1.o foo2.o -o foo
调用函数库:函数库是一些头文件(.h文件)和库文件(.a和.so文件)的集合
-I 向g++头文件搜索路径中添加新的路径
-L 向g++库文件搜索路径中添加新的路径
-l 指示g++链接的函数库,库文件命名以lib开头,故这里可以省略lib
库文件分为:静态链接库(.a结尾),动态链接库(.so结尾)
g++优先使用动态链接库,在动态链接库不存在的情况下使用静态链接库
可以在编译时增加-static强制使用静态链接库
-Dmacro 相当于C语言中的#define macro
-Dmacro=defn 相当于C语言中的#define macro=defn
-Umacro 相当于C语言中的#undef macro
分享到:
相关推荐
使用yum安装g++,软件开发,C语言开发,C++开发。
下面小编就为大家带来一篇Linux下g++编译与使用静态库和动态库的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
windows下使用g++编译的opencv,include和lib文件在install文件夹下
linux下g++编译与使用静态库和动态库
对于有些linux没有安装gcc,可以使用这个包安装! 一定要按着下面的顺序做,否则会报错。 rpm -Uvh glibc-kernheaders-2.4-9.1.98.EL.i386.rpm rpm -Uvh glibc-headers-2.3.4-2.25.i386.rpm rpm -Uvh glibc-devel-...
使用g++编译文件。 ``` g++ main.cpp Optimization.cpp -O3 -std=c++17 -o Test.exe ``` 将生成的`Test.exe`置入项目的`project`目录下,并在`project`目录下打开命令行窗口,输入`.\Test.exe`运行程序。 计算...
g++编译命令选项.本文讨论GNU编译器集合(GCC)中的C++编译器(g++)的典型用法,主要是指命令行选项的构造。GCC的C++编译器正常安装后,可以使用g++或c++命令执行。
GCC开发教材 详细 适合新手 高手 中手 全部的手
较为全面的介绍g++和gCC,对linux下的c++的使用大有裨益。
用于G++写公式去除固定的特殊字符,或者字符文本转换。亲测可以使用。
基与Linux-ARM版的GCC,现在移植到了安卓。压缩包中有必要的软件和用法,这样就可以在安卓上体验GCC和G++了
在本论坛下了个g++ 可是却是不全的压缩包,很是坑爹的很,自己搞了个,供大家使用,g++是编译c++必备的,当然我说的实在linux中 祝大家好运 ubuntu g++版本4.4
使用g++编译文件。 ``` g++ main.cpp Optimization.cpp -O3 -std=c++17 -o Test.exe ``` 将生成的`Test.exe`置入项目的`project`目录下,并在`project`目录下打开命令行窗口,输入`.\Test.exe`运行程序。 计算...
RedHat Linux 6安装默认不带有G++的安装包,只带有GCC的安装包,要安装G++安装包请下载附件。附件内有两个文件,安装时有顺序。要安装GCC请使用RedHat Linux 6安装光盘上的安装包。本人RHL6 Client上亲测通过。...
c++ C++_使用g++编译cpp工程.pdf
ubuntu在vcs 安装的时候,必须要降低gcc、g++的版本,才能使用。 一般降低到4.7版本可以使用
g++是GNU组织推出的C++编译器。它不但可以用来编译传统的C++程序,也可以用来编译现代C++,比如C++11/14等。 使用提供的程序,可以按照blog的教程进行练习。
名称:自动万能makefile(linux ubuntu gcc/g++) 作者:码客(卢益贵) qq:48092788 时间:2018-5-20 功能: 1、自动以makefile的父目录名为Target文件名称 2、自动搜索源码文件(含子目录) 3、自动搜索...
记录Linux中gcc/g++常用编译选项,有很详细的使用说明