我在 Win10x64 PC 上工作,需要原生 32 位 Linux 环境。
我尝试在 WSL2 VM 中实现这一点。
- 我不想
-m32
在 64 位系统上编译并运行 32 位二进制文件。 - 我想要一个可以
getconf LONG_BIT
打印 32 的虚拟机。 - 我以前使用 Virtual PC 的 WM,但现在我想利用 WSL2。
我的一个朋友在他的 PC 上安装了 WSL2 的“debian32”发行版。
他的发行版正是我需要的,但我在网上找不到它的任何踪迹……
有人知道如何以及在哪里找到可以在 WSL2 上安装的真正的 32 位发行版吗?
(不一定是德比安...)
答案1
虽然我还没有尝试在 Windows WSL 中这样做,但正如你所要求的,在虚拟盒。
对于基于 Debian 的 32 位 Linux 源,请尝试Ubuntu 16.04,无论是服务器还是桌面。
Tushar Soam 提供一步一步的指导在
答案2
最后我解决了我的问题!
我让我的朋友导出他的发行版,然后我导入它,它就可以正常工作了。
当我编译/运行此代码时:
#include <cstdio>
int main ()
{
printf("compil = %s\n",__TIME__ ) ;
printf("size ptr = %u\n",(int)sizeof( void* )) ;
printf("size func = %u\n",(int)sizeof( int(*)(int) )) ;
printf("size long = %u\n",(int)sizeof( long )) ;
printf("size llong = %u\n",(int)sizeof( long long )) ;
printf("size int = %u\n",(int)sizeof( int )) ;
}
像这样gcc test.cpp && ./a.out
我得到:
compil = 11:22:07
size ptr = 4
size func = 4
size long = 4
size llong = 8
size int = 4
当我输入时getconf LONG_BIT
,我得到 32。
我认为这证明我的虚拟机是 32 位的(所以这是可能的!)