15.10 - 无法运行 32 位 wine

15.10 - 无法运行 32 位 wine

今天,我尝试在 64 位 Ubuntu 15.10 上安装 wine,但遇到了一些问题。我只需运行

sudo apt-get install wine

现在的问题是我无法运行 wine 二进制文件,错误如下:

linn@Asus:/$ wine
bash: /usr/bin/wine: cannot execute binary file: Exec format error

虽然 64 位二进制文​​件似乎运行良好:

linn@Asus:/$ wine64
Usage: wine PROGRAM [ARGUMENTS...]   Run the specified program
       wine --help                   Display this help and exit
       wine --version                Output version information and exit

现在我当然开始进行一些深入研究,看来“wine”二进制文件确实是 32 位二进制文​​件,而且我显然需要一些额外的库才能运行它们。

linn@Asus:/$ file /usr/bin/wine
/usr/bin/wine: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ca94516ed13ede12998b464b0a5ef9f5ebebfb67, stripped

尽管我认为当我通过 apt-get 安装 wine 时,任何此类库都应作为依赖项。我仍然尝试安装它们,但意识到我已经拥有了所有这些,并且没有做出任何更改。(例如建议的库这里或者这里

坦白说,我不知道该尝试什么了,而且从我在网上发现的少量类似问题来看,这似乎不是一个过于频繁出现的问题。

另一个可能表明某些问题的奇怪问题是,这是一台运行瑞典语语言包的笔记本电脑。当我尝试运行 winecfg 时,发生了以下情况:

linn@Asus:/$ winecfg
/usr/bin/wine: 1: /usr/bin/wine: Syntax error: "(" unexpected

是否可能由于某些语言问题而导致路径混乱?

wine 版本如下:

linn@Asus:/$ wine64 --version
wine-1.6.2

但是在尝试官方 wine PPA 中的 1.7 和 1.8 版本时出现了同样的问题。

提前感谢您的任何帮助和努力。

更新 1

我尝试通过对所有与 wine 相关的软件包运行 apt-get remove 和 autoremove 来删除所有与 wine 相关的软件包。现在,检查 dpkg 中是否有与 wine 相关的软件包,结果如下:

linn@Asus:~$ dpkg --get-selections | grep -e wine
libkwineffects6                 deinstall
libwine-development:amd64           deinstall
libwine-development:i386            deinstall
wine1.6                     deinstall
wine1.6-amd64                   deinstall
wine1.6-i386:i386               deinstall
wine1.8                     deinstall
wine1.8-amd64                   deinstall
wine1.8-i386:i386               deinstall

然后我尝试了 Gert Otten 在他的回答中所建议的方法并运行(我尝试安装普通的“wine”而不是“wine-bin”,因为 Ubuntu 15.10 似乎不存在“wine-bin”包):

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install wine

不幸的是,它导致了同样的问题。

答案1

好吧,问题是我使用了自定义的 4.4 内核,因为我的笔记本电脑上的触摸板无法正常工作。此问题描述如下内核 bugzilla 线程

我现在运行的 4.5 版 Linux 内核包含了所需的更改。从自定义内核更改为主线内核后,wine 就开始正常工作了。然后,我还用官方 4.4 主线内核进行了测试,发现 wine 也能正常工作。因此,我非常肯定自定义内核是导致问题的原因,尽管我无法解释原因。

希望这可以帮助有类似问题的人。

答案2

您必须安装 i386 版本的 Wine,您可以使用以下命令进行安装:

sudo dpkg --add-architecture i386

运行之后:

sudo apt-get update && sudo apt-get install wine-bin

最后运行:

winecfg

测试 Wine i386 版本。

相关内容