首页
学习
活动
专区
工具
TVP
发布

Linux系统中使用GCC CPU参数优化代码编译

Linux系统中使用GCC CPU参数优化代码编译 使用特定的GCC参数可以使编译出的程序执行效率有较大提升。...具体如下: 1、优化原理: 在编译程序时,借助参数传递的方法,使用与系统CPU相匹配的gcc参数,编译出的程序就是为系统CPU而进行特定优化过的,因而执行速度和效率都会是最好。...(2) 对于Gentoo Linux或FreeBSD可以通过修改/etc/make.conf添加参数的方法来实现,而不必使用参数传递法。...下面对其中的一些参数进行具体说明: -O3:相对于-O、-O1、-O2,-O3开启了所有GCC支持的优化特性; -msse2:开启CPU所支持的sse2指令集; -mmmx:参考-msse2 -mfpmath...附:常见CPU优化参数 386: CHOST="i386-pc-linux-gnu" CFLAGS="-march=i386 -O3 -pipe -fomit-frame-pointer" CXXFLAGS

2.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

linuxgcc使用方法_linux怎么用gcc编译

命令概述 gcc命令使用GNU推出的基于C/C++的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。...GCC的初衷是为GNU操作系统专门编写的一款编译器。GNU系统是彻底的自由软件。此处,“自由”的含义是它尊重用户的自由。 02. 命令格式 用法:gcc [选项] 文件… 03....optimizers|params|target|warnings|[^] {joined|separate|undocumented}}[,…] 显示特定类型的命令行选项 (使用‘-v –help’显示子进程的命令行参数...4.9 多文件编译方法二 [deng@localhost bak]$ gcc -c test.c [deng@localhost bak]$ gcc -c testfun.c [deng@localhost...bak]$ gcc test.o testfun.o -o test [deng@localhost bak]$ 到此这篇关于Linux gcc命令的具体使用的文章就介绍到这了,更多相关Linux gcc

6.4K20

Linux gcc使用基础

gcc 编译器是 Linux 下默认的 C/C++ 编译器,大部分 Linux 发行版中都是默认安装的。gcc 编译器通常以 Linux 命令的形式在终端(Shell/Bash)中使用。...注意:gcc编译源码,不加任何参数时,生成的可执行性文件默认为a.out,并且没有中间过程的目标文件。...生成目标文件&自定义名称 使用-c参数可以生成.o结尾的目标文件: gcc -c hello.c 使用ls命令查看当前目录,多出一个hello.o目标文件。...注意:编译阶段可以添加-O参数进行程序优化,或是-Wall参数显示详细的编译信息,如: gcc -O -c thanks.c thanks_2.c gcc -Wall -c thanks.c thanks...后面的-L参数用于指定库的搜索路径,由于Linux的默认库的位置就是在lib文件目录下,因此可以省略不写,如果是其它的第三方库,则需要指明库文件的位置。

3.2K10

makefile 编译参数_gcc使用说明

gcc编译源文件共有4个过程,预处理、编译、汇编、链接。...预处理: 命令:gcc -E test.c -o test.i (-o后面指定生成文件的命名) 过程:展开宏定义(#define),处理编译条件指令(#if #ifndef等),插入引用的头文件(...汇编: 命令:gcc -c test.s -o test.o 过程:将汇编语言转换成二进制文件 结果:生成.o文件,一般的文本编辑器无法打开,二进制文件都是0、1 链接: 命令:gcc...test.o -o test 过程:链接动态库、静态库 结果:生成可执行文件 我们编译源文件的时候,可以分步编译,也可以使用gcc test.c -o test直接生成可执行文件。...将多个源文件编译输出时,需要一起进行gcc编译,可利用Makefile文件来实现。 分步编译如下: 最后得到main可执行文件,在cmd命令窗口下输入main+回车,即可运行main可执行文件。

42220

Linuxgcc的使用

文章目录 编译的过程 1.预处理阶段 a.预处理工作:展开头文件,去注释,宏替换和删除 b.外部定义宏参数 2.编译(生成汇编) 3.汇编(生成不可执行的可重定向二进制目标文件) 4.链接(生成可执行的目标文件...静态链接的优缺点 区分动/静态链接 查看链接属性 指定静态链接 总结 编译的过程 在正式开始之前首先对编译和链接进行一个整体的了解 1.预处理阶段 a.预处理工作:展开头文件,去注释,宏替换和删除 gcc...-E test.c -o test.i -E表示程序开始翻译,当执行完预处理就停下来 -o表示将预处理后形成的临时文件(名字任取) 在vim底行模式下输入:vs+文件名即可打开多个文件 安装gcc...:sudo yum -y install gcc b.外部定义宏参数 gcc test.c -DSHOW//在外部给test.c定义宏SHOW gcc+文件名不加任何选项就是直接将源代码翻译成可执行程序...动态链接库:前缀为lib,后缀为.so 静态链接库:前缀为lib,后缀为.a libc.so.6去掉前缀lib和后缀.so以及版本号.6,最后只剩下c,所以这个是C标准库 指定静态链接 当我不指定时Linux

2.9K00

Linux 编译安装 GCC 4.8

Linux 编译安装 GCC 4.8 详见: Linux 编译安装 GCC 4.8 GCC4.8发布啦,这个脚本在之前4.7的基础上做了点改进,移除一些过时的组件,增加了检测不到时自动下载源码包 PS:...4.8.1开始全面支持C++11特性,并且脱离了ppl库,gdb也开始脱离ppl库了 编译安装 GCC 4.8.X 在执行 install.sh 脚本前安装 ncurses-devel 和 python-devel..., 用于编译gdb和开启python功能 安装完成后,把[GCC源码目录]/libstdc++-v3/python 复制到[用户目录]/.gdb 编辑[用户目录]/.gdbinit,添加 编译安装gdb...GMP到5.1.3 2013-12-13 更新binutils到2.24,更新gdb到7.6.2,移除对ppl的依赖,显式开启gold等一些选项,显式开启链接时优化选项 2014-05-23 更新gcc...到4.8.3,更新gdb到7.7.1,完全移除对ppl的依赖,同步gcc4.9编译脚本中修复的一些问题,增加编译选项等 2015-02-09 更新gcc到4.8.4(未测试,貌似这个版本加入了jit)

4.3K50

Linux 编译安装 GCC 4.8

Linux 编译安装 GCC 4.8 详见: Linux 编译安装 GCC 4.8 GCC4.8发布啦,这个脚本在之前4.7的基础上做了点改进,移除一些过时的组件,增加了检测不到时自动下载源码包 PS:...4.8.1开始全面支持C++11特性,并且脱离了ppl库,gdb也开始脱离ppl库了 编译安装 GCC 4.8.X 准备环境及依赖项 支持 ISO C++ 98 的编译器(GCC 4.7.2 的中期一个...目录中的infrastructure目录下载 ) cloog 版本0.18.1(此处可下载 ftp://gcc.gnu.org/pub/gcc/infrastructure/ ) 我编译的环境...4.4.7 or gcc 4.1.2 or gcc 4.4.5 编译的依赖库: gmp 6.0.0a mpfr 3.1.2 mpc 1.0.2 isl 0.11.1 cloog 0.18.1...到4.8.3,更新gdb到7.7.1,完全移除对ppl的依赖,同步gcc4.9编译脚本中修复的一些问题,增加编译选项等 2015-02-09 更新gcc到4.8.4(未测试,貌似这个版本加入了

6.8K20
领券