编译32位和64位兼具的wine(包含WoW64特性)
1.首先我们建立两个文件夹,并把源码都解压到两个文件夹里,这两个文件夹分别编译32位和64位wine源码,两个架构我们都需要编译。我这里在同一个目录下创建了wine32,wine64两个文件夹,并把源码都解压进去了。
2.先编译64位wine,我这里命令行如下:
cd wine64
sudo apt install libgstreamer-plugins-base1.0-dev libsdl2-dev
sudo apt autoremove
./configure --enable-win64
make
3.等待64位的编译完成,再去编译32位的wine:
cd ../wine32
sudo apt install libgstreamer-plugins-base1.0-dev:i386 libsdl2-dev:i386
sudo apt autoremove
./configure --with-wine64=../wine64
make
4.可见编译32位wine时通过--with-wine64参数指定了已编译完成的wine64位的目录,这样编译32位wine时,程序会注入64位版本处理32位程序所需的库。
5.等待全部编译完成之后,分别进入两个文件夹执行安装命令即可(指定了DESTDIR参数指定安装目录的话,两次指定的安装目录必须相同):
#默认安装
sudo make install
cd ../wine64
sudo make install
#指定安装目录(两次指定的安装目录必须相同)
make DESTDIR=安装目录 install
cd ../wine64
make DESTDIR=安装目录 install
6.需要注意的是,两个文件夹都make完成后,就不能修改两个文件夹的名称以及它们的相对位置了,否则在make install 32位的wine时会导致找不到64位wine的文件夹导致make install命令失败。
7.这样就完成了整个过程了!输入wine命令即可使用wine。