代码拉取完成,页面将自动刷新
该模块用于制作openEuler嵌入式的交叉编译器
configs: 依赖工具及其crosstool-ng的各架构构建配置
prepare.sh: 用于下载构建所需的依赖仓库,并按照下载的路径,刷新config
对于64位编译器,脚本中(update_feature)通过修改GCC源码,默认从lib64目录下寻找链接器,并在libstdc++.so中添加默认安全选项(relro、now、noexecstack)
可通过ct-ng show-config查看配置基础情况(例如cp config_aarch64 .config && ct-ng show-config)
最终配置可参见输出件*gcc -v
例(arm64):
COLLECT_GCC=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/bin/aarch64-openeuler-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/libexec/gcc/aarch64-openeuler-linux-gnu/10.3.1/lto-wrapper
Target: aarch64-openeuler-linux-gnu
Configured with: /usr1/cross-ng_openeuler/.build/aarch64-openeuler-linux-gnu/src/gcc/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=aarch64-openeuler-linux-gnu --prefix=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu --exec_prefix=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu --with-sysroot=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/aarch64-openeuler-linux-gnu/sysroot --enable-languages=c,c++,fortran --with-pkgversion='crosstool-NG 1.25.0' --enable-__cxa_atexit --disable-libmudflap --enable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --disable-libmpx --disable-libstdcxx-verbose --with-gmp=/usr1/cross-ng_openeuler/.build/aarch64-openeuler-linux-gnu/buildtools --with-mpfr=/usr1/cross-ng_openeuler/.build/aarch64-openeuler-linux-gnu/buildtools --with-mpc=/usr1/cross-ng_openeuler/.build/aarch64-openeuler-linux-gnu/buildtools --with-isl=/usr1/cross-ng_openeuler/.build/aarch64-openeuler-linux-gnu/buildtools --enable-lto --enable-threads=posix --enable-target-optspace --enable-plugin --enable-gold --disable-nls --enable-multiarch --with-multilib-list=lp64 --with-local-prefix=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/aarch64-openeuler-linux-gnu/sysroot --enable-long-long --with-arch=armv8-a --with-gnu-as --with-gnu-ld --enable-c99 --enable-shared --enable-poison-system-directories --enable-symvers=gnu --disable-bootstrap --disable-libstdcxx-dual-abi --enable-default-pie --libdir=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/lib64 --with-build-time-tools=/home/openeuler/x-tools/aarch64-openeuler-linux-gnu/aarch64-openeuler-linux-gnu/bin
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 10.3.1 (crosstool-NG 1.25.0)
sudo docker pull swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container
sudo docker run -idt --network host swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container bash
cd /usr1 && git clone -b master https://gitee.com/openeuler/yocto-embedded-tools.git
cd yocto-embedded-tools/cross_tools
./prepare.sh
chown -R openeuler:users /usr1
su openeuler
#aarch64:
cp config_aarch64 .config && ct-ng build
#arm32
cp config_arm32 .config && ct-ng build
#x86_64
cp config_x86_64 .config && ct-ng build
#riscv64
cp config_riscv64 .config && ct-ng build
以arm64为例,重命名目录后打包即可使用。/home/openeuler/x-tools/aarch64-openeuler-linux-gnu下的内容和yocto构建容器的/usr1/openeuler/gcc/openeuler_gcc_arm64le下的内容一致
cd /home/openeuler/x-tools/
mv aarch64-openeuler-linux-gnu openeuler_gcc_arm64le
tar czf openeuler_gcc_arm64le.tar.gz openeuler_gcc_arm64le
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。