Box86项目:在ARM设备上安装和配置Wine的完整指南

Box86项目:在ARM设备上安装和配置Wine的完整指南

box86 Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices box86 项目地址: https://gitcode.com/gh_mirrors/bo/box86

前言

Box86是一个强大的x86指令集模拟器,它允许在ARM架构的Linux设备上运行x86架构的Windows程序。本文将详细介绍如何在Box86环境下正确安装和配置Wine,使您能够在树莓派等ARM设备上运行Windows应用程序。

系统要求与注意事项

硬件要求

  • ARM架构的Linux设备(如树莓派)
  • 对于树莓派3B+及更早型号,需要3G/1G内存分配的内核
  • 树莓派4默认已使用3G/1G内存分配

重要注意事项

  1. 必须安装x86(i386)版本的Wine,即使是在ARM设备上
  2. 不要使用系统仓库中的wine-armhf包
  3. 在64位ARM系统(aarch64)上需要额外安装armhf库

Wine安装方法详解

方法一:使用TwisterOS提供的预编译包

这种方法安装的是经过验证的Wine 5.13版本,稳定性较好:

# 备份现有Wine安装
sudo mv ~/wine ~/wine-old
sudo mv ~/.wine ~/.wine-old
sudo mv /usr/local/bin/wine /usr/local/bin/wine-old
sudo mv /usr/local/bin/wineboot /usr/local/bin/wineboot-old
sudo mv /usr/local/bin/winecfg /usr/local/bin/winecfg-old
sudo mv /usr/local/bin/wineserver /usr/local/bin/wineserver-old

# 下载并解压Wine
wget https://twisteros.com/wine.tgz -O ~/wine.tgz
tar -xzvf ~/wine.tgz
rm ~/wine.tgz

# 创建启动脚本和符号链接
echo -e '#!/bin/bash\nsetarch linux32 -L '"$HOME/wine/bin/wine "'"$@"' | sudo tee -a /usr/local/bin/wine >/dev/null
sudo ln -s ~/wine/bin/wineboot /usr/local/bin/wineboot
sudo ln -s ~/wine/bin/winecfg /usr/local/bin/winecfg
sudo ln -s ~/wine/bin/wineserver /usr/local/bin/wineserver
sudo chmod +x /usr/local/bin/wine /usr/local/bin/wineboot /usr/local/bin/winecfg /usr/local/bin/wineserver

# 初始化Wine环境
wine wineboot

方法二:从WineHQ仓库安装自定义版本

这种方法允许您安装特定版本的Wine,适合需要特定版本兼容性的场景:

# 定义要安装的Wine版本参数
wbranch="devel"  # 可以是devel、staging或stable
wversion="7.1"   # 版本号
wid="debian"     # 发行版类型
wdist="bullseye" # 发行版代号
wtag="-1"        # 包后缀

# 清理旧版本并下载新版本
wineserver -k
rm -rf ~/.cache/wine ~/.local/share/applications/wine
sudo mv ~/wine ~/wine-old
sudo mv ~/.wine ~/.wine-old

# 下载和解压Wine包
cd ~/Downloads
wget https://dl.winehq.org/wine-builds/${wid}/dists/${wdist}/main/binary-i386/wine-${wbranch}-i386_${wversion}~${wdist}${wtag}_i386.deb
wget https://dl.winehq.org/wine-builds/${wid}/dists/${wdist}/main/binary-i386/wine-${wbranch}_${wversion}~${wdist}${wtag}_i386.deb
dpkg-deb -x wine-${wbranch}-i386_${wversion}~${wdist}${wtag}_i386.deb wine-installer
dpkg-deb -x wine-${wbranch}_${wversion}~${wdist}${wtag}_i386.deb wine-installer
mv wine-installer/opt/wine* ~/wine
rm wine*.deb
rm -rf wine-installer

# 创建启动脚本和符号链接(同上)

64位ARM系统的额外配置

在64位ARM系统上,需要安装额外的32位兼容库:

sudo dpkg --add-architecture armhf && sudo apt-get update
sudo apt-get install -y libasound2:armhf libc6:armhf libglib2.0-0:armhf \
    libgphoto2-6:armhf libgphoto2-port12:armhf libgstreamer-plugins-base1.0-0:armhf \
    libgstreamer1.0-0:armhf libldap-2.4-2:armhf libopenal1:armhf libpcap0.8:armhf \
    libpulse0:armhf libsane1:armhf libudev1:armhf libusb-1.0-0:armhf libvkd3d1:armhf \
    libx11-6:armhf libxext6:armhf libasound2-plugins:armhf ocl-icd-libopencl1:armhf \
    libncurses6:armhf libncurses5:armhf libcap2-bin:armhf libcups2:armhf \
    libdbus-1-3:armhf libfontconfig1:armhf libfreetype6:armhf libglu1-mesa:armhf \
    libglu1:armhf libgnutls30:armhf libgssapi-krb5-2:armhf libkrb5-3:armhf \
    libodbc1:armhf libosmesa6:armhf libsdl2-2.0-0:armhf libv4l-0:armhf \
    libxcomposite1:armhf libxcursor1:armhf libxfixes3:armhf libxi6:armhf \
    libxinerama1:armhf libxrandr2:armhf libxrender1:armhf libxxf86vm1:armhf

Winetricks安装与使用

Winetricks是一个强大的辅助工具,用于安装Windows运行库和组件:

# 安装Winetricks
sudo apt-get install cabextract -y
sudo mv /usr/local/bin/winetricks /usr/local/bin/winetricks-old
cd ~/Downloads && wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
sudo chmod +x winetricks && sudo mv winetricks /usr/local/bin/

# 使用Winetricks安装组件(必须禁用Box86横幅)
BOX86_NOBANNER=1 winetricks -q corefonts vcrun2010 dotnet20sp1

Wine环境管理技巧

1. Wineprefix(Wine容器)管理

  • 默认位置:~/.wine
  • 初始化:wine wineboot
  • 重置环境:rm -rf ~/.wine后重新运行wine wineboot

2. 移植Wineprefix

可以从x86 Linux系统复制已配置好的Wine环境:

# 在x86系统上打包
tar -cvf winebottle.tar ~/.wine

# 在ARM设备上解压
tar -xf winebottle.tar

3. 切换Wine版本

只需替换~/wine目录内容,然后运行:

wine wineboot  # 迁移wineprefix
wine --version # 检查当前版本

常见问题解决方案

  1. Winetricks崩溃问题

    • 确保使用BOX86_NOBANNER=1前缀
    • 不要启用Box86日志功能
  2. Wine-staging特殊需求

    sudo apt install libstb0 -y
    cd ~/Downloads
    wget -r -l1 -np -nd -A "libfaudio0_*~bpo10+1_i386.deb" http://ftp.us.debian.org/debian/pool/main/f/faudio/
    dpkg-deb -xv libfaudio0_*~bpo10+1_i386.deb libfaudio
    sudo cp -TRv libfaudio/usr/ /usr/
    
  3. 程序兼容性问题

    • 尝试不同Wine版本(stable/devel/staging)
    • 检查是否所有依赖库都被Box86支持

通过本文的详细指导,您应该能够在ARM设备上成功配置Box86和Wine环境,为运行Windows应用程序做好准备。记住,不同程序可能需要特定的Wine版本和配置,遇到问题时可以尝试调整这些参数。

box86 Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices box86 项目地址: https://gitcode.com/gh_mirrors/bo/box86

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郦琳凤Joyce

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值