msys2编译linux,在MSYS2+MinGW环境下编译arm-none-eabi工具链

本文介绍了如何在Windows的MSYS2环境中编译适用于arm平台的arm-none-eabi工具链。通过编译gmp、mpfr、mpc、binutils和gcc,最终得到一个不依赖于MSYS运行时的交叉编译环境。在编译过程中,作者解决了遇到的如texinfo缺失和Win32API创建进程失败等错误。
摘要由CSDN通过智能技术生成

前言

在Windows平台有MSYS2这个非常好用的linux模拟环境,支持大量的linux实用工具,如:busybox, grep, find, sed, awk, perl, gcc等等. 虽然MSYS2平台也提供了gcc编译器,但它的gcc工具链是i686-pc-msys,也就是说它编译出来的代码是基于MSYS的运行时环境, 而不是原生的Windows运行时(MSVCRT),所以为了编译Windows平台运行的EXE程序,还是使用MINGW提供的GCC比较好。

目的

MSYS和MINGW都提供了各自的gcc工具链,但是没有arm平台的交叉编译环境,所以自己尝试编译一个单纯的arm-none-eabi工具链。

正文

在MSYS+MINGW环境下编译gcc和在linux系统编译过程大体相同,

编译顺序也是这样的:gmp -> mpfr -> mpc ->binutils -> gcc (-> glibc -> binutils -> gcc)。

注意:不要用太新的GCC版本编译太旧的GCC源码,我之前用GCC6.3编译4.8版本的源码失败了。

我现在测试使用的是GCC5.10, 编译的源码版本为4.8.5。

1.编译gmp, mpfr, mpc

#../configure --disable-shared --host=i686-pc-mingw32 --build=i686-pc-mingw32 --prefix=/opt/mingw

#make

#make install

编译过程都比较顺利

host 指定运行这个库的环境是mingw32

buil

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值