我正在尝试在运行 Debian ARMEL 的 SheevaPlug 上安装 Ventrilo 服务器。由于 Ventrilo 服务器是一个 x86 程序,我想尝试使用 qemu-i386 在我的 ARM 处理器上运行该服务器。当我尝试运行该服务器时,我遇到了此错误:
ventrilo@micro:~/ventsrv$ qemu-i386 ./ventrilo_srv
/lib/ld-linux.so.2: No such file or directory
我知道 /lib/ld-linux.so.2 是 so 的 x86 版本,而 so.3 是 ARM 版本(我有)。我是否只需找到 so.2 共享对象并将其放在我的 /lib 文件夹中?似乎我不想在该文件夹中混合使用 lib archs,但也许这就是它们命名不同的原因?我应该如何解决此错误?
答案1
我通过复制我的 PC i386 解决了 ARM 设备上的问题ld-linux.so.2如下 :
scp /lib/ld-linux.so.2 [email protected]:/lib
然后复制所有需要的共享库。就我而言,我在复制之前将它们全部组织到设备内的一个新文件夹中:
mkdir /lib/i386-linux-gnu
scp /usr/lib/i386-linux-gnu/libstdc++.so.6 [device]:/lib/i386-linux-gnu
scp /usr/lib/i386-linux-gnu/libgcc_s.so.1 [device]:/lib/i386-linux-gnu
scp /usr/lib/i386-linux-gnu/libc.so.6 [device]:/lib/i386-linux-gnu
scp /usr/lib/i386-linux-gnu/libm.so.6 [device]:/lib/i386-linux-gnu