gcc编译器配置
一.使用交叉编译器编译
1.安装交叉编译工具链
2.导出环境变量
[ubuntu @tmp]$ export PATH=$PATH:/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/aarch64-poky-linux //导出编译工具链的路径
[ubuntu @tmp]$ export CC="aarch64-poky-linux-gcc -march=armv8-a -mtune=cortex-a57.cortex-a53 --sysroot=/usr/local/oecore-x86_64/sysroots/aarch64-poky-linux" //编译时要指定sysroot
[ubuntu @tmp]$ $CC test.c -o test //编译
注意:Android上面的编译方法不是这样的。
[ubuntu @Yocto]$ . scripts/oesdk_app.sh
[ubuntu @Yocto]$ $CC -v
Using built-in specs.
COLLECT_GCC=aarch64-poky-linux-gcc
COLLECT_LTO_WRAPPER=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/7.2./lto-wrapper
Target: aarch64-poky-linux
Configured with: ../../../../../../work-shared/gcc-7.2.-r0/gcc-7.2./configure
--build=x86_64-linux
--host=x86_64-oesdk-linux
--target=aarch64-poky-linux
--prefix=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr
--exec_prefix=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr
--bindir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/aarch64-poky-linux
--sbindir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/bin/aarch64-poky-linux
--libexecdir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/libexec/aarch64-poky-linux
--datadir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/share
--sysconfdir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/etc
--sharedstatedir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/com
--localstatedir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/var
--libdir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/aarch64-poky-linux
--includedir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/include
--oldincludedir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/include
--infodir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/share/info
--mandir=/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/share/man
--disable-silent-rules
--disable-dependency-tracking
--with-libtool-sysroot=/home/user10/g6s/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.-r0/recipe-sysroot
--with-gnu-ld
--enable-shared
--enable-languages=c,c++
--enable-threads=posix
--enable-multilib
--enable-c99
--enable-long-long
--enable-symvers=gnu
--enable-libstdcxx-pch
--program-prefix=aarch64-poky-linux-
--without-local-prefix
--enable-lto
--enable-libssp
--enable-libitm
--disable-bootstrap
--disable-libmudflap
--with-system-zlib
--with-linker-hash-style=gnu
--enable-linker-build-id
--with-ppl=no
--with-cloog=no
--enable-checking=release
--enable-cheaders=c_global
--without-isl
--with-gxx-include-dir=/not/exist/usr/include/c++/7.2.
--with-build-time-tools=/home/user10/g6s/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.-r0/recipe-sysroot-native/usr/aarch64-poky-linux/bin
--with-sysroot=/not/exist
--with-build-sysroot=/home/user10/g6s/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.-r0/recipe-sysroot
--without-long-double-
--enable-poison-system-directories
--with-mpfr=/home/user1/g6p/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.-r0/recipe-sysroot
--with-mpc=/home/user1/g6p/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.-r0/recipe-sysroot
--enable-nls
--enable-initfini-array
--enable-__cxa_atexit
Thread model: posix
gcc version 7.2. (GCC)
gcc编译器配置的更多相关文章
- 字符编码与gcc 编译器的编码问题
最近在 vscode 中借助 gcc 编译器来配置 c 语言开发环境时,发现中文编码存在乱码问题.再加上最近学习到多字节字符与宽字符,搅在一起,搞得很乱,就把自己的理解写下来,供有需者参考吧. 1. ...
- windows下安装,配置gcc编译器
在Windows下使用gcc编译器: 1.首先介绍下MinGW MinGW是指仅仅用自由软件来生成纯粹的Win32可运行文件的编译环境,它是Minimalist GNU on Windows的略称. ...
- 在CentOS 7.2下升级gcc编译器的版本
默认情况下,CentOS 7.2预装的gcc版本是4.8.x,通过执行命令 gcc -v 可以看到,一般情况下这个版本的编译器已经满足需要了,但是某些特殊的时候为了支持C++更高的特性,需要对gcc编 ...
- Linux安装gcc编译器详解
本人使用的是CentOS 6.5 64位系统,由于在安装系统的时候并没有勾选安装gcc编译器,因此需要自行安装gcc编译器. 使用yum安装gcc 对于配备了yum的Linux发行版而言,安装gcc编 ...
- gcc编译器与基本类型3
C语言发展史 1969年贝尔实验室 肯尼斯·蓝·汤普逊,丹尼斯·李奇开发了B语言 ->Unix,New B语言,改名C语言83年提出C语言标准 1989年十二月正式通过C语言标准,C89标准 C ...
- Windows下使用GCC编译器
1.GCC编译器的选择 Windows下最常见的安装GCC的方式有两种:Cygwin和MinGW.本文主要介绍MinGW的安装配置. 2.下载MinGW 下载地址:http://sourceforge ...
- redhat下升级gcc编译器
在有网络的环境下,采用下载gcc源码进行编译的方式升级gcc版本,所以需要本身已有gcc编译器. 获取 gcc-4.9.2的包: wget http://gcc.skazkaforyou.com/re ...
- gcc编译器对宽字符的识别
最早是使用VC++工具来学习C++,学的越多就越对VC挡住的我看不见的东西好奇,总想多接触一些开发环境,今日抽空摸索了一下CodeBlocks这个开源的IDE使用方法,配置的编译器是MinGW的gcc ...
- windows安装gcc编译器
由于vc6.0对c语言编译不是很好,有些语句是正确的,但是编译却不能通过 所以决定在windows中安装gcc编译器来使用! http://www.cnblogs.com/cryinstall/arc ...
随机推荐
- InFusion错误类型分析
1 God Class 1.1 特征 上帝类通常过多的操纵其他类的数据,从而破坏了类的封装性.上帝类从其他类中获得功能,同时增加了自身的耦合性,通常会导致自己具有规模过大和较高的复 ...
- #include <ntifs.h>出现PEPROCESS redefinition问题处理
转载:http://blog.csdn.net/ytfrdfiw/article/details/23334297 如果在自己的程序中,即包含ntddk.h和ntifs.h的时候,编译的时候会出现如下 ...
- 《Effective Java 2nd》第2章 创建和销毁对象
目录 第1条:考虑使用静态工厂方法代替构造器 第2条:遇到多个构造器参数时考虑用构建器 第3条:用私有构造器或者枚举类型强化Singleton属性 第4条:通过私有构造器强化不可实例化的能力 第5条: ...
- mysql的隔离性和锁
INNODB的隔离性质 INNODB的事务支持4种隔离机制,分别是 READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, and SERIALIZABL ...
- python 判断是否是元音字母
def is_vowel(char): all_vowels = 'aeiou' return char in all_vowels print(is_vowel('c')) print(is_vow ...
- 【测试设计】基于正交法的测试用例设计工具--PICT
前言 我们都知道成对组合覆盖是一种非常有效的测试用例设计方法,但是实际工作过程中当成对组合量太大,我们往往很难做到有效的用例覆盖. PICT是微软公司出品的一款成对组合命令行生成工具,它很好的解决了上 ...
- 雷林鹏分享:JSP 简介
JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开 ...
- Android之网络图片加载的5种基本方式
学了这么久,最近有空把自己用到过的网络加载图片的方式总结了出来,与大家共享,希望对你们有帮助. 此博客包含Android 5种基本的加载网络图片方式,包括普通加载HttpURLConnection.H ...
- oracle性能诊断艺术-执行计划
--case1 --case2 --case3 --case4 --case5 --case6 --case7 --case8 --case9 --case10 --case12 SQL> AL ...
- 12.2 Web窗体--代码片段详解
第12章 使用Web窗体 ※ 除常规HTML元素之外,Web窗体文件还包含另外3种内容:代码片段.可编程HTML元素和控件 ※ 代码隐藏类只应包含特定于单个Web窗体的代码.如果存在多个Web窗体 ...