人間夜行

一切の有為の法 夢幻泡影の如し

艰难曲折的wine经历

| 评论

话说自从使用arch以来就没有用过wine了。不过因为好奇,还是用用看。官方源中用pacman下载的wine是64位版本(我是64位机器),许多软件运行不正常,无奈之下,想到自己编译成32位的。可是一路曲折,困难多多。

从winehq下载最近版本,解压。直接./configure,因为默认会编译成32位的版本。此时遇到错误:

checking whether gcc -m32 works... no
configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries.
这就十分郁闷了。我记得好像是有32位库的,为什么没有用?然后用yaourt一检查,发现确实没有装上带有development标签的包。这样问题就来了。我以前装一些软件的时候总是提示说要装这些,但我都被冲突提示吓跑了,一直没敢装。这次大胆一点,终于鼓足勇气装了下去:
[[email protected] wine-1.3.28]$ yaourt gcc-multilib
1 multilib/gcc-multilib 4.6.1-4 (multilib-devel)
The GNU Compiler Collection - C and C++ frontends for multilib
==> Enter n° of packages to be installed (ex: 1 2 3 or 1-3)
==> -------------------------------------------------------
==> 1

密码:
正在解决依赖关系...
正在查找内部冲突...
:: gcc-libs-multilib 与 gcc-libs 有冲突。删除 gcc-libs 吗? [y/N] y
:: binutils-multilib 与 binutils 有冲突。删除 binutils 吗? [y/N] y
:: gcc-multilib 与 gcc 有冲突。删除 gcc 吗? [y/N] y
(后面省略) 就这样,把那三样装上了。./configure也终于能通过了,只是输出如下信息:

configure: libxinerama 32-bit development files not found, multi-monitor setups won't be supported.
configure: libxcomposite 32-bit development files not found, Xcomposite won't be supported.
configure: OpenCL 32-bit development files not found, OpenCL won't be supported.
configure: libhal/libdbus 32-bit development files not found, no dynamic device support.
configure: libgnutls 32-bit development files not found, no schannel support.
configure: lib(n)curses 32-bit development files not found, curses won't be supported.
configure: libsane 32-bit development files not found, scanners won't be supported.
configure: libv4l 32-bit development files not found.
configure: libgphoto2 32-bit development files not found, digital cameras won't be supported.
configure: liblcms 32-bit development files not found, Color Management won't be supported.
configure: gstreamer-0.10 base plugins 32-bit development files not found, gstreamer support disabled
configure: OSS sound system found but too old (OSSv4 needed), OSS won't be supported.
configure: libcapi20 32-bit development files not found, ISDN won't be supported.
configure: libcups 32-bit development files not found, CUPS won't be supported.
configure: libgsm 32-bit development files not found, gsm 06.10 codec won't be supported.
configure: libopenal 32-bit development files not found (or too old), OpenAL won't be supported.
configure: libldap (OpenLDAP) 32-bit development files not found, LDAP won't be supported.

configure: WARNING: prelink not found, base address of core dlls won't be set correctly.

configure: WARNING: libxml2 32-bit development files not found (or too old), XML won't be supported.

configure: WARNING: libxslt 32-bit development files not found, xslt won't be supported.

configure: WARNING: GetText 32-bit development files not found (or too old). Internationalization won't be fully supported.

configure: Finished.  Do 'make' to compile Wine. 无奈之下把提示缺少的包都装上。好在大多数都可以找到并且是multilib的,一些没有的就忽略算了。(事实证明这可能是大隐患。)

重新./configure,然后make,sudo make install。完成。

但是后来发现一个巨大问题,虽然很多程序都能“正常”运行,但右键不能弹出菜单,提示说某个组件(OLE?)找不到,中文有时也显示不正常。我regedit检查了一下字体配置,一切正常。莫非是编译时的问题?我X环境的问题(最近pacman -Syu升级后X下字体隐约有问题)?这样一个GEEK觉得很吃力,于是一想,啊!果断放弃。

GNU/Linux做不了的事情,就是不需要做的事情。这句话可以安慰一下。(语出王珢《摒弃Windows,完全用GNU/Linux工作》?无奈啊)

评论