纪海鹏,小城天长论坛,兴安证券大智慧
本文主要描述的是:解决 win10 ubuntu子系统中运行 32bit linux原生程序 报错 exec format error 。
问题来源于 在 win10 ubuntu子系统中运行 linux原生交叉编译器 32bit gcc 。
解压gcc 后直接运行
./arm-linux-gcc -v 报错 : exec format error
按照常规方式 : 原生 ubuntu 添加 32bit 运行环境
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libc6:i386
sudo apt-get install lib32ncurses5 lib32ncurses5-dev
sudo apt-get install lib32z1
并没有解决问题。
报错同样是 exec format error
通过 readelf -a arm-linux-gcc 检查程序导出表发现问题
readelf 命令报错:not an elf file - it has the wrong magic bytes at the start
初步确定问题来源,子系统不支持原生linux文件头。
而后通过搜索此错误找到相关english网页。 此问题。
解决方式如下:
添加xxx形式文件头支持
1 sudo apt update 2 sudo apt install qemu-user-static 3 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'
可能还有其他依赖需要安装,按照原生linux 的教程即可。 一直在找问题 安装了不少东西,其中有没有用未知。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
新补丁让Windows 10出现死机、卡顿等 微软坐不住称正解决
Ubuntu 20.04 LTS进驻Windows子系统:只能用3年
ThinkPad正式加入:预装Linux发行版而非Win10的PC越来越多了
最新版Android 11推送!谷歌Pixel 5被曝光:支持反向充电
高度致敬Windows!开源优麒麟20.04 LTS发布:支持5年
电脑小知识:Windows 10是用什么语言写的?到底有多少行代码?
Win10 5月更新准正式版:微软引入大量新功能 系统响应速度快
Windows 10新预览版19613推送:修复任务栏图标显示异常BUG
Windows AD 报错解决:UAC File Virtualization服务启动失败 此驱动程序被阻止加载
网友评论