高版本macos(>10.15)交叉编译低版本gcc(4.7.x)例子

在macos 11.5.2上,尝试用Apple clang 13编译低版本gcc(4.7.2)失败,因gcc存在bug。改用4.7.3并借助Ubuntu 16.04作为中间平台成功完成交叉编译。
摘要由CSDN通过智能技术生成

背景

在高版本macos(>10.15)通过brew install gcc@4.7.x 已经无法成功,因为版本差距太大,许多开发环境已经不支持,有点挑战

环境

host: macos 11.5.2
host gcc:Apple clang version 13.0.0 (clang-1300.0.29.3)
target: i686-none-linux-gnu
target gcc source: gcc-4.7.2.tar.bz2

结果编译报错,发现 gcc-4.7.2 带有bug

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57625

所以换到相近的 gcc-4.7.3.tar.bz2 进行编译,由于 gcc 版本差距太大,所以使用 brew install gcc@7 作为跳板进行编译,编译成功!

envir.sh

#!/bin/bash

BASEDIR=$(dirname "$0")
cd ${BASEDIR}
BASEDIR=`pwd`

unset LANG
export HOST=x86_64
export BUILD=$HOST
export TARGET=i686-none-linux-gnu
export BUILD_ROOT_DIR=${BASEDIR}/../../
export BUILD_DIR=${BUILD_ROOT_DIR}/build/
export CROSS_TOOL=${BUILD_ROOT_DIR}/cross-tool
export CROSS_GCC_TMP=${BUILD_ROOT_DIR}/cross-gcc-tmp
export SY
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值