Linux学习网!Linux爱好者的家园~凡事都是必须经过枯燥无味阶段才能做到较高层次的。
首页 新闻 Linux命令 学习入门 Ubuntu 服务配置 数据库 Linux发行版 视频教程 Linux下载 Linux论坛 留言本

TOP

Wine安装
2010-08-17 15:21:48 来源:Linux学习网 】 浏览:34次 评论:0
Wine全名(Wine Is Not a Emulator,Wine不仅仅是一个模拟器)

准备:首先Linux系统里要GCC编译器,没有GCC下面的工作无法进行。虽然网上有各个发行版本的wine RPM安装包,但是还是建议自己编译,不然有很多模windows的库文件将会不能调用,wine的功能等于减半。经常有人说为什么别人模拟到的软件为什么自己模拟不到,很多时候就是因为这个原因做成的。

卸载wine:
如果先前安装过wine,那么在安装新版wine前必须拆卸原先的wine。检验方法:$ wine --version,如果显示了wine版本号,那么系统就存要wine。卸载方法:rpm -e wine,如果原先是源码安装的,进入原编wine的目录,执行make unistall就O了。

然后要下载wine(非RPM包):
我用的是wine0.9.10,下载wine-0.9.10.tar.bz2。有两种方法编译wine。

方法一(简单,推荐),用wineinstall安装:用普通用户登录,解压wine-0.9.10.tar.bz2,解压后的目录就是原码安装包,进入该目录。运行:./tools/wineinstall按提示回答就可以了。

实际操作:
用普通用户登录,将tar包复制到/home/当前user目录下(我的是gener)

cd /home/gener
tar jxvf wine-0.9.10.tar.bz2
cd wine-0.9.10
./tools/wineinstall

之后它会运行./configure,然后显示:We need to install wine as root user, do you want us to build wine,'su root' and install Wine?  Enter 'no' to continue without installing(yes/no)

yes 回车

如果在此处出现错误,请检查此命令的输出,如果他没有找到一些需要的包,而你又希望使用那个包提供的功能时,请安装相应的 devel 包。

如果你root用户设置了密码,还会提示你输入密码。

待屏幕上出现:
Installation complete for now. Good luck (this is still alpha software).
If you have problems with WINE, please read the documentation first,
as many kinds of potential problems are explained there.

则表示安装成功了。

方法二:
以root用户登入。进入wine源码安装包的目录,依次执行

./configure
make depend
make
make install

实际操作:
以root登录,将wine-0.9.10.tar.bz2复制到/root/目录下面。

打开终端,运行:
cd /root
tar jxvf wine-0.9.10.tar.bz2
cd wine-0.9.10

./configure --prefix=/usr/local/wine

如果在此处出现错误,请检查此命令的输出,如果他没有找到一些需要的包,而你又希望使用那个包提供的功能时,请安装相应的 devel 包。

make depend && make && make install
wine

至此,wine安装成功。

附带一些笔记:

(1)wine运行程序的两种方式
wine可以用两种不同的度式运行应用程序:作为预编译的windows二进制程序,或者作为本地编译X11(X Windows系统)应用程序。前者使用模拟把一个windows应用程序连接到wine库上。通过wine安装或是简单的把windows程序复制到 Linux系统下,就可以直接用模拟器运行windows程序。后者运wine运行windows程序必须有这个应用程序的源代码。不用本地 windows编译它,象对其它UNIX应用程序所做的一样,要用本地Linux编译它-例如gcc-并连接上Wine库。这些本地连接的应用程序被称为 Winelib应用程序。wine应用的重点要前种使用方式。

(2)windows程序的三个方面
注册表——windows中重要的数据库,作用大,不用说;

目录结构——就用程序期望在指定的预先决定的位置找到或安装东西,期望这些目录存在。由于与UNIX目录结构不同,并且多数这些位置是硬编(hardcode),然后通过Windows API和注册表来查找。在Wine安装上这是必需注意的一个方面;

系统DLL——在windows中它们通常驻留在system(或system32)目录中。一些windows应用程序运行时需要装载这些DLL,会尝试到上述目录中去查找并装载。当应用程序要求一个DLL而Wine不能装载它们自己的内部DLL(.so文件)时,Wine不模拟不存在的文件(舍弃模拟);

注:wine安装两种方法,一是用wine小组制作的自动Wine安装脚本tool/wineinstall,它可以做我们认为必要的所有事情。另外一种是常规的编译安装方式,除非用户很清楚正在做什么,否则不推荐运行常规的configure&&make depend&&make install方式。此时,建议用户可以使用tools/wineinstall来建立一个配置文件、安装注册表、并建立自己的目录结构。

(3)系统DLL的解决方案
对于那些在运行中只需检查文件是否存在来确定调用的程序。Wine的解决方法是建立伪DLL文件来模拟真实DLL文件使程序运行起来。如果存在这样的问题,可以在system目录中建立一个空文件来让应用程序认为它存在,而在实质调用时wine装载它的内置DLL替代。(wine原文手册写道:可惜 wineinstll工具不具有建立这种空文件的功能);

而有些DLL文件,应用程序不仅要查询其是否存在(如DirectX版本),而且还要从原资源文件中查询资源的版本。这样空文件不起作用,因此必须有完整版本资源的安装文件。wine当前正处理这个问题。因此,目前要解决这些问题仍需要真实的DLL文件。

对于另外一些wine目前未很好实现(或根本未实现)的DLL,如果不拥有一个真实的windows,则有的人会找到所需的DLL。
分享到:
你可能感兴趣的文章:
Tags:卸载wine Wine全名 Linux系统
】 【打印繁体】【投稿】 【评论】 【关闭】 【返回顶部
上一篇VMware网络配置 下一篇置grub默认启动系统及menu.lst参..

推荐图文

赞助商

相关栏目

最新文章

热门文章

推荐文章