必须先确认架构与版本再选Wine或CrossOver:ARM64平台需启用armhf多架构,x86_64可跳过;V10 SP1及以上优先用预装CrossOver,否则手动安装Wine并创建隔离前缀、注入vcrun2019等运行库。

在银河麒麟系统上双击exe文件没反应、终端执行wine报“Exec format error”或“no such file or directory”,说明当前环境缺少正确架构的兼容层支持,必须先确认硬件平台与系统版本,再选择Wine或CrossOver路径——跳过这步直接安装,90%会卡在启动界面或闪退。
第一步:确认系统架构与版本
打开终端,依次执行:
cat /etc/os-release → 查看ID_LIKE、VERSION_ID字段,确认是Kylin V10 SP1(如2303/2403)还是SP2;
uname -m → 若输出aarch64,为ARM64平台(飞腾D2000、鲲鹏920等),【必须启用armhf多架构】;若输出x86_64,则为Intel/AMD平台,可跳过多架构步骤;
这一步不能省——ARM64平台不加armhf就装x86程序,wine会直接报错“cannot open shared object file”,连错误提示都不完整。
第二步:安装Wine或使用预装CrossOver
方法一:优先调用系统自带CrossOver(仅限V10 SP1及以上)
点击【开始】→【软件商店】→ 搜索“CrossOver”→ 点击【安装】;
安装完成后,在【系统工具】中启动CrossOver,首次运行时允许其创建容器权限;
方法二:手动安装Wine(全版本通用,尤其适合无图形界面或离线环境)
sudo apt update → sudo apt install wine → wine --version验证是否输出wine-8.0.1或更高;
ARM64平台必须追加:【sudo dpkg --add-architecture armhf && sudo apt update && sudo apt install libc6:armhf libglib2.0-0:armhf】;
漏掉这行,后续所有32位Windows程序都启动失败。
第三步:创建隔离容器并配置环境
① 运行命令创建专用前缀(避免不同程序DLL冲突):
WINEARCH=win32 WINEPREFIX=~/.wine_qq winecfg
② 在弹出窗口中切换到【设置】选项卡,将Windows版本选为Windows 10;
③ 切换到【函数库】选项卡,在【新增函数库顶替】栏输入winemenubuilder.exe → 下拉选择【禁用】;
④ 关闭窗口,此时~/.wine_qq已初始化完成,C盘自动映射到该目录下的drive_c;
注意:不要复用默认~/.wine目录,多个程序共用会导致注册表污染,QQ和微信同时装会互相覆盖字体和托盘行为。
第四步:注入运行时依赖库
多数exe安装包依赖VC++、.NET或DirectX组件,Wine原生不带这些DLL;
先安装winetricks:sudo apt install winetricks;
然后指定前缀执行:WINEPREFIX=~/.wine_qq winetricks -q vcrun2019 dotnet48;
这一步耗时较长,但不可跳过——缺vcrun2019会导致安装向导按钮灰色、无响应;缺dotnet48则.NET程序直接弹窗报错“Failed to initialize CoreCLR”。
第五步:运行或安装exe文件
方式1(直接运行免安装程序):WINEPREFIX=~/.wine_qq wine ~/Downloads/QQSetup.exe;
方式2(通过CrossOver安装):打开CrossOver → 选中已建好的Windows 10容器 → 点击【运行命令】→ 浏览定位到exe文件 → 确认;
方式3(右键菜单集成):在文件管理器中右键exe文件 → 【属性】→ 【打开方式】→ 添加“Wine Windows Program Loader”,设为默认;
执行后若出现黑屏或白屏,立刻按Ctrl+C终止,不要反复点击——某些程序(如新版钉钉)会在后台持续写入损坏的注册表项,重试三次以上可能需删除整个~/.wine_qq重来。

















