SketchUp 2014 已安装在计算机的 Windows 分区中(并在 Windows 下运行)。Ubuntu(12.04 Precise)也安装在另一个分区中。
简单地通过 wine 运行 SketchUp(通过 获取apt-get install wine
)并不能提供可用的程序;像这样:
wine /mnt/diskc/Program\ Files/SketchUp/SketchUp\ 2014/SketchUp.exe
要让它发挥作用该怎么做?
问题在于:
- 它没有找到某些库(DLL);
- 它没有找到“许可证文件”;
- 解决前面的问题后,SketchUp 在通过初始设置对话框后仍然进入无响应状态。
一般来说,根据网上的各种报道,SketchUp 预计可以在 wine 下使用;请参阅http://wiki.winehq.org/Sketchup?action=show&redirect=GoogleSketchup。
答案1
安装 wine 的默认方式是
apt-get install wine
在 Ubuntu 14.04 (Trusty) 中安装 wine-1.6.2(在 14.04 (Precise) 中安装更旧的版本)。
首先,为了安全起见,并且在执行此操作时不损坏 Windows 分区(NTFS)中的任何数据,我将其重新挂载为只读:
# umount /mnt/diskc
# mount /mnt/diskc -o ro
#
1:所需的 DLL
为了解决问题 1,在 12.04 (Precise) 中,我必须将一个库复制/符号链接到 wine 的磁盘 C 中:
$ ln -s /mnt/diskc/Windows/System32/mfc100u.dll ~/.wine/drive_c/windows/system32/
2:查找“许可证文件”
为了解决问题 2,在 12.04 (Precise) 中,我必须将一个特殊的 SketchUp 数据文件复制/符号链接到 wine 的磁盘 C 中:
$ ln -s /mnt/diskc/ProgramData/SketchUp/SketchUp\ 2014/SketchUp14.lf ~/.wine/drive_c/users/Public/Application\ Data/SketchUp/SketchUp\ 2014/SketchUp14.lf
...根据需要创建父目录(mkdir -p ~/.wine/drive_c/users/Public/Application\ Data/SketchUp/SketchUp\ 2014
)。
或者也许我应该将包含数据的整个目录符号链接/复制(以重新使用这些设置):
$ ln -s /mnt/diskc/ProgramData/SketchUp ~/.wine/drive_c/users/Public/Application\ Data/
3:SketchUp 启动后无响应
事实证明另一个已知问题(请参阅“提示”)(通过“Sketchup 没有响应“)。
(顺便提一句,我的解决方案主要基于该帖子http://ubuntuhandbook.org/index.php/2014/06/install-google-sketchup-ubuntu1404/。我写这个答案是因为我想为那篇文章添加一些更正和更精确的当前信息。非常感谢!)
此时,可以决定以禁用 SketchUp 中的 Ruby 引擎为代价来解决这个问题,运行方式类似于:
$ wine /mnt/diskc/Program\ Files/SketchUp/SketchUp\ 2014/SketchUp.exe /DisableRubyAPI
这个问题一定已经(不完美地)在 wine-1.7.31 中已修复;此版本或更高版本可在 Ubuntu Wine 存储库中找到适用于 14.04 (Trusty) 或更高版本,所以我需要从 12.04 (Precise) 升级到 Trusty 才能使用这些软件包。
官方 Ubuntu Trusty 存储库(如上所述,wine-1.6.2)附带的版本不适合。
使用PPA的wine1.7的体验
首先,我将整个系统升级到 14.04 (Trusty)。然后,要在 14.04 (Trusty) 中使用 PPA 中的 wine 包:
# apt-get purge 'wine.*'
# apt-add-repository ppa:ubuntu-wine/ppa
# apt-get update
# apt-get install wine1.7
(令人惊讶的是,虽然apt-get install wine1.7
确实安装了wine-mono
和wine-gecko
依赖项的一个版本,但它们不符合wine
程序包的要求,正如运行时的警告所表明的那样winecfg
;我必须手动 apt-get-install 这些软件包的其他(较新)版本。报告为winehq 错误。
当使用 Trusty 的 PPA 中的 wine1.7 时,也必须应用上述问题 1 和 2 的解决方案。
(14.04(Trusty)的版本是1.7.50-0ubuntu1
;然后我也在 14.10(Utopic)上尝试了所有这些,而 PPA 为 14.10(Utopic)提供的 wine 版本是1.7.44-0ubuntu1
,所以比 Trusty 的版本旧,因此 - 当然 - 也需要修复问题 1(DLL)。)