解决WSL2无法运行32位程序问题(arm-hisiv300-linux-gcc: cannot execute binary file: Exec format error)

本文介绍了如何解决在WSL2上遇到的不能运行32位程序的问题,特别是针对arm-hisiv300-linux-gcc报'cannot execute binary file: Exec format error'的情况。提供了Ubuntu20不再支持32位x86的信息,并给出了在WSL2+Ubuntu18.04环境下运行32位x86程序的解决方案链接。
摘要由CSDN通过智能技术生成

首先,Ubuntu20已不支持32位x86,参考:

http://blog.itpub.net/31560522/viewspace-2638443/

WSL2+Ubuntu18.04运行32位x86程序的方法:

#需要安装qemu-user-static软件包,添加i386 binfmt,启用i386体系结构
    sudo apt update
    sudo apt install qemu-user-static
    sudo update-binfmts --install i386 /usr/bin/qemu-i386-static --magic '\x7fELF\x01\x01\x01\x03\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x01\x00\x00\x00' --mask '\xff\xff\xff\xff\xff\xff\xff\xfc\xff\xff\xff\xff\xff\xff\xff\xff\xf8\xff\xff\xff\xff\xff\xff\xff'

#启用i386架构和软件包
    sudo dpkg --add-architecture i386
    sudo apt update
    sudo apt install gcc:i386

#每次重新启动WSL并需要i386支持时,都需要重新激活此功能:
    sudo service binfmt-support start

#测试:
    #以安装海思Hi3518E交叉编译工具链为例(未启用i386前)
    $ arm-hisiv300-linux-gcc -v
    -bash: /opt/hisi-linux/x86-arm/arm-hisiv300-linux/t
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值