在WSL中运行32位程序

摘要:
今天发现在WSL中运行32位程序hmetis会报错:-bash:./hmetis:cannotexecutebinaryfile:Execformaterror用filehmetis命令查看文件信息:hmetis:ELF32-bitLSBexecutable,Intel80386,version1(SYSV),dynamicallylinked,interpreter/lib/ld-linux.s

今天发现在WSL中运行32位程序hmetis会报错:

-bash: ./hmetis: cannot execute binary file: Exec format error

用file hmetis命令查看文件信息:

hmetis: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.0.0, stripped

经过查找,发现github上@Froosh给出了他的解决方案,通过安装qemu来运行32位的程序:https://github.com/Microsoft/WSL/issues/2468

1. 首先安装qemuandbinfmt

sudoapt update
sudo apt install qemu-user-static
sudo update-binfmts --install i386 /usr/bin/qemu-i386-static --magic 'x7fELFx01x01x01x03x00x00x00x00x00x00x00x00x03x00x03x00x01x00x00x00' --mask 'xffxffxffxffxffxffxffxfcxffxffxffxffxffxffxffxffxf8xffxffxffxffxffxffxff'

每次重新启动WSL并希望i386支持时,您都需要重新激活此功能:

sudo service binfmt-support start

2. 接下来启用i386体系结构和package

sudo dpkg --add-architecture i386
sudoapt update
sudo apt install cpp-9:i386
sudo apt install gcc:i386

至此,就可以运行之前的32位binary了。

3. 设置开机启动

vim /etc/myinit.sh
sudo service binfmt-support start

参考:https://www.cnblogs.com/TatuCz/p/10330820.html

免责声明:文章转载自《在WSL中运行32位程序》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇webuploader在IE8/9下上传遇到的两个问题首个threejs项目-前端填坑指南下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

su安装

SU 的安装(Ubuntu下)   SU是科罗拉多州矿业学院开发的一个免费地震处理软件。国内外很多科研人员及学生都借助于他来进行创作,和其他天价的处理软件相比,SU对学生就显得尤为珍贵了,更何况他开放源代码,可以方便地在其基础上进行再创作。 但是对于不是很熟悉LINUX的人来说,能把它安装上也需要花不少功夫,下面就把我的体会写出来,以供大家参考。 注:我把...

MongoDB无法启动的解决方法

http://dmyz.org/archives/423 遇到MongoDB突然无法启动,第一反应是删除mongod.lock。这个文件在MongoDB的数据库目录下,默认是/data/db。这是最常见的问题了,产生原因是MongoDB没有正常结束(比如被kill -9杀掉或是其他意外情况导致中断)。 还一些其他情况会导致MongoDB无法启动。本文讨论的...

安装Docker版MS SQL Server并远程连接SQL Server

1.从Docker 官方下载MS SQL Serve的docker微软官方镜像,选择你要使用的Tag(即版本). docker pull mcr.microsoft.com/mssql/server 2.启动MS SQL Server docker 容器.注意:使用--name='取个名字' 给docker容器取个名字,这样容易记住 docker run...

Linux 安装.src.rpm源码包的方法

方法一:以setarch-1.3-1.src.rpm 软件包为例(可以到CSDNhttp://download.csdn.net/source/215173#acomment下载) 假设该文件已经存在于/usr/local/src/下。在该目录下执行rpmbuild --rebuild --clean setarch-1.3-1.src.rpm 若顺利执行...

Ansible安装并带您入门

一、简介 Puppet, SaltStack, Chef, Ansible都是服务器批量运维常用工具,其中Ansible最大的亮点在于”无客户端、简单易用和日志集中控管。”,不用帮每台机器 (instance) 预载 agent,只要有 SSH 和 Python 就可以。,本文介绍一下Ansible的基本使用。 二、结构 1、当 Control Mach...

U盘启动安装 window server 2003

win7 及以上的系统,可以用 ultraiso 将系统iso制作成 U盘启动盘,但 xp / server 2003 不行,只能用如下方法: 下载 server 2003 PE 版我下载的是 “我心如水 SERVER 2003 PE 维护版_v19.16.ISO”,比较小,只有 44.2 M,但是集成了常用的管理工具,例如 ghost, ultrais...