• 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.0/lto-wrapper
    Target: aarch64-poky-linux
    Configured with: ../../../../../../work-shared/gcc-7.2.0-r0/gcc-7.2.0/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.0-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.0 
    --with-build-time-tools=/home/user10/g6s/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.0-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.0-r0/recipe-sysroot 
    --without-long-double-128 
    --enable-poison-system-directories 
    --with-mpfr=/home/user1/g6p/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.0-r0/recipe-sysroot 
    --with-mpc=/home/user1/g6p/build/tmp/work/x86_64-nativesdk-oesdk-linux/gcc-cross-canadian-aarch64/7.2.0-r0/recipe-sysroot 
    --enable-nls 
    --enable-initfini-array 
    --enable-__cxa_atexit
    Thread model: posix
    gcc version 7.2.0 (GCC) 
  • 相关阅读:
    彻底卸载MySql
    MySql和SQL Server数据类型 对比
    easyui combobox 中实现 checkbox
    浅谈研发项目经理
    软件公司项目经理岗位职责
    input text 的事件及方法
    c#解析HTML
    SQL SERVER 数据库查询表和字段信息语句
    Silverlight动态载入调用XAML资源
    几种设计模式简介(转载)
  • 原文地址:https://www.cnblogs.com/hellokitty2/p/9683166.html
Copyright © 2020-2023  润新知