Bash On Windows(WSL)无法运行32Bit程序,报错cannot execute binary file: Exec format error解决办法

一、背景

windows下用linux工具,但32位的却无法运行报错

aapt: cannot execute binary file: Exec format error
file aapt
aapt: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.24

二、解决办法

github上@Froosh给出了他的解决方案,通过安装qemu来运行32位的程序

具体步骤:

Install qemu and binfmt

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‘

这一步实现了把程序的运行交由qemu-user-static来运行,从而实现运行32位

注意每次重启WSL都得重新开启,可将这步加到开机自动启动中

sudo service binfmt-support start

参考:

https://github.com/Microsoft/WSL/issues/2468

原文地址:https://www.cnblogs.com/TatuCz/p/10330820.html

时间: 2024-12-05 05:27:08

Bash On Windows(WSL)无法运行32Bit程序,报错cannot execute binary file: Exec format error解决办法的相关文章

eclipse 运行 mapreduce程序报错 No job jar file set. User classes may not be found. See JobConf(Class) or JobConf#setJar(String).

报错信息 17/07/06 17:00:27 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.17/07/06 17:00:27 WARN mapred.JobClient: No job jar file set. User classes may not be found. See JobConf

Window7中Eclipse运行MapReduce程序报错的问题

按照文档:http://www.micmiu.com/bigdata/hadoop/hadoop2x-eclipse-mapreduce-demo/安装配置好Eclipse后,运行WordCount程序报错: log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory). log4j:WARN Please initialize the log4j

用java运行Hadoop程序报错:org.apache.hadoop.fs.LocalFileSystem cannot be cast to org.apache.

用java运行Hadoop例程报错:org.apache.hadoop.fs.LocalFileSystem cannot be cast to org.apache.所写代码如下: package com.pcitc.hadoop; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.h

Flash Builder4.0运行应用程序报错

1.错误描述 SecurityError: Error #2148: SWF 文件 file:///D:/Adobe Flash Builder 4 Installer/HVBox/bin-debug/VHBox.swf 不能访问本地资源 file:///D:/Adobe Flash Builder 4 Installer/HVBox/bin-debug/framework_4.0.0.14159.swf.只有仅限于文件系统的 SWF 文件和可信的本地 SWF 文件可以访问本地资源. at fl

eclipse运行hadoop程序报错:Connection refused: no further information

log4j:WARN No appenders could be found for logger (org.apache.hadoop.conf.Configuration.deprecation). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Exceptio

Failed to resolve:com.android.support:appcompat-v7第一次运行安卓程序报错

1.当你在用别的电脑上的android studio编写一个项目时,然后copy下来,又在自己电脑上的android studio 上导入该项目时会报错(两台电脑上安装的android studio版本不一样) 2.自己的android studio SDK平台工具的版本太低,然后在不了解项目构建文件(build.gradle文件)的前提下,点开了SDK Manger更新了项目构建工具(SDK Build-Tools)的版本 看完上面两种情况,其实都可以发现它们的共同点,那就是版本问题,所以上述

java学习-IDEA运行java程序报错

问题1: 解决办法:依次执行如下两步   问题2: 解决办法:如下两项版本应保持一致 原文地址:https://www.cnblogs.com/wang-mengmeng/p/11689569.html

windows下mongoengine报错False is not a read preference.的解决办法

mongoengine是基于pymongo的,后者的3.0版本在windows下似乎会有这个问题,解决方法就是降级: pip install pymongo==2.8 来源:upgrade to pymongo 3.0 breaks pymongo connection #935

Mac 运行 gem install 报错 cannot load such file -- openssl

gem install bundlerERROR: Loading command: install (LoadError) cannot load such file -- opensslERROR: While executing gem ... (NoMethodError) undefined method `invoke_with_build_args' for nil:NilClass 解决方法: 之前装好了homebrew,可以直接用brew 安装 brew install [em