Pal*_*ron 4 linux x86 32-bit windows-subsystem-for-linux
我用谷歌搜索了这个问题,一些答案声明 WSL 2 现在支持 ELF 32 程序。
然而,在wsl2 Debian/Ubuntu发行版上的简单测试没有通过。
这是我的测试:
// install run-time
sudo dpkg --add-architecture i386
sudo apt-get update
// install build tools
sudo apt install build-essential
sudo apt install gcc-multilib
// build
gcc helloworld.c -m32
// run!
./a.out
bash: ./a.out: cannot execute binary file: Exec format error
Run Code Online (Sandbox Code Playgroud)
指:
小智 10
如果您在 WSL 中运行该命令,uname -a您应该会得到包含 WSL 版本的结果。这应该是类似的Linux COMPUTER_NAME 4.4.0-18362-Microsoft ...。该输出中的数字 18362 是您的 WSL 版本,并且它需要至少为 19041 才能成为 WSL2 版本(仅 WSL2 支持 32 位应用程序)。
您还可以在 CMD shell 中运行wsl --list --verbose,您将看到 WSL 实例的版本是1。
WSL2 将于 2020 年 5 月 12 日作为 Windows 10 2004 的一部分发布。如果您不想等待,可以通过“Windows Insider 计划”注册预览版本。
在 Windows 中,转到“设置” -> “Windows Insider 计划”并注册该计划。然后去检查更新。下载需要一段时间,然后按照提示进行所有所需的重新启动等操作。
确保在打开或关闭 Windows 功能中启用“虚拟机平台”
wsl --set-default-version 2以使所有未来的 WSL 安装都使用 WSL2wsl --set-version <Distro> 2以将已安装的实例更改为 WSL2
wsl --list --verbose我在过去一个小时内完成了所有这些工作,因为我需要运行今天早上构建的 Zephyr 模拟二进制文件。它成功了,我很高兴:)
| 归档时间: |
|
| 查看次数: |
12922 次 |
| 最近记录: |