查看“OpenChrome(VIA显卡)”的源代码
来自Ubuntu中文
←
OpenChrome(VIA显卡)
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
---- 原文出处:https://help.ubuntu.com/community/OpenChrome 原文作者:MartinJuergens 授权许可:http://www.gnu.org/copyleft/fdl.html GNU自由文档许可证 翻译人员:yhlfh 适用版本:6.06.1(Dapper) , 6.10(Edgy) ---- </nowiki></pre> Openchrome是真对VIA/S3G[http://help.ubuntu.com/community/UniChrome UniChrome]和[http://help.ubuntu.com/community/UniChrome UniChrome]Pro显示芯片组(CLE266, KN400, KM400,K8M800, PM800, CN400, VN800,K8M890)的自由及开放源代码的驱动程序。 它最初被称为“快照”(snapshot)版本,因为它是unichrome cvs源码的一个实验性分枝的一个简单印象,它是同样合并支持unichrome-pro芯片的unichrome开源驱动[http://unichrome.sf.net (http://unichrome.sf.net)]的一个继续发展。 它最初被用来作为实验性的、粗糙的开发的一个临时练兵场,它被unichrome.sf.net计划的所有者宣称为其的一个分叉(该计划本身是VIA发布的原始驱动的一个分叉)。 由于对于所有芯片组的硬件加速支持(XvMC)在随后的unichrome.sf.net驱动中被剔除了,所以如果你希望通过自由及开放源代码的驱动将你VIA芯片的加速特性使用起来的话,你唯一的选择就是使用openChrome。 要获取更多信息,请访问http://www.openchrome.org/ 本指南将帮助你在'''Ubuntu 6.06 LTS'''以及更高版本中编译openChrome。本文同样适用于Debian以及其他基于Debian的发行版,例如Kanotix和Knoppix。 ==== 在你开始之前 ==== * 你必须拥有管理员权限。 * 请确认你激活了Universe以及Multiverse软件源。 ==== 编译openChrome 2D驱动 ==== * 安装所需软件包 ** 在Ubuntu 6.10 (Edgy)中,运行 <pre><nowiki> sudo apt-get build-dep xserver-xorg-video-via </nowiki></pre> 在Ubuntu 6.06.1 (Dapper),Debian以及其他基于Debian的发行版,运行 <pre><nowiki> sudo apt-get build-dep xserver-xorg-driver-via </nowiki></pre> 为了安装编译openChrome所需的软件包,附加安装 ** subversion ** autoconf ** automake1.9 ** libtool ** cvs ** linux-headers-ARCH (这取决与你所使用的内核,例如386或generic。命令"uname -r"会显示你的内核版本号) <pre><nowiki> sudo apt-get install subversion autoconf automake1.9 libtool cvs linux-headers-ARCH</nowiki></pre> * 好戏真正上演 ** 现在我们将编译openChrome 2D驱动 ** 新建一个目录 <pre><nowiki> mkdir openchrome</nowiki></pre> ** 切换到刚刚建好的目录 <pre><nowiki> cd openchrome</nowiki></pre> ** 获得不同于K8M890芯片组的openChrome源代码: <pre><nowiki> svn co http://svn.openchrome.org/svn/trunk/</nowiki></pre> ** K8M890芯片组请运行: <pre><nowiki> svn co http://svn.openchrome.org/svn/branches/vt3336_branch/</nowiki></pre> ** 非K8M890芯片组进入源码目录 <pre><nowiki> cd trunk</nowiki></pre> ** K8M890芯片组请输入: <pre><nowiki> cd vt3336_branch</nowiki></pre> ** 运行带prefix参数的autogen.sh以便使驱动程序安装在正确的目录 <pre><nowiki> ./autogen.sh --prefix=/usr/</nowiki></pre> ** 编译openChrome <pre><nowiki> make</nowiki></pre> ** 安装openChrome <pre><nowiki> sudo make install</nowiki></pre> * '''将Xorg驱动改为via''' 现在我们需要编辑/etc/X11/xorg.conf并将Device Driver改为via <pre><nowiki> sudo gedit /etc/X11/xorg.conf</nowiki></pre> 找到 <pre><nowiki> Section "Device"</nowiki></pre> 并将 <pre><nowiki> Driver "blahblah"</nowiki></pre> 改为 <pre><nowiki> Driver "via"</nowiki></pre> 保存文件。 最后,我们需要通过''Ctrl-Alt-Backspace''重启X。如果Xorg不再启动的话,在虚拟控制台登录并利用文本编辑器(例如nano)将Device section的驱动改回去(把下面的东西摘在一张小纸片上)。 <pre><nowiki> sudo nano /etc/X11/xorg.conf</nowiki></pre> ==== openChrome和3D ==== 3D在Edgy中应该无须配置便能正常工作。如果没有,请进行如下操作: * '''获得源代码''' <pre><nowiki> cvs -z3 -d:pserver:anonymous@dri.freedesktop.org:/cvs/dri login</nowiki></pre> (当要求密码时按enter就行了) <pre><nowiki> cvs -z3 -d:pserver:anonymous@dri.freedesktop.org:/cvs/dri co drm</nowiki></pre> * '''编译libdrm和drm内核模块''' ** '''libdrm''' 切换到drm源代码存放目录 <pre><nowiki> cd drm </nowiki></pre> 运行autogen脚本 <pre><nowiki> ./autogen.sh --prefix=/usr </nowiki></pre> 编译源代码 <pre><nowiki> make </nowiki></pre> 安装编译好的源代码 <pre><nowiki> sudo make install </nowiki></pre> * '''drm内核模块''' 切换到正确的目录(你应该已经在drm目录了) <pre><nowiki> cd linux-core </nowiki></pre> 编译内核模块 <pre><nowiki> make LINUXDIR=/lib/modules/`uname -r`/build DRM_MODULES=via </nowiki></pre> 复制内核模块到正确的位置 <pre><nowiki> sudo cp *.ko /lib/modules/`uname -r`/kernel/drivers/char/drm/ </nowiki></pre> 运行depmod <pre><nowiki> sudo depmod -ae </nowiki></pre> 启动模块 <pre><nowiki> sudo modprobe drm sudo modprobe via</nowiki></pre> 用如下命令测试 <pre><nowiki> glxinfo | grep render </nowiki></pre> 你应该得到一行信息说"direct rendering: Yes" 如果它正常工作了,加入模块以便让其自行启动 <pre><nowiki> sudo echo "drm" >>/etc/modules sudo echo "via" >>/etc/modules </nowiki></pre> * 应该就这样了。重启看看它工作得如何。 ==== 问题与解决方法 ==== * '''我的系统有时会冻结''' 这是由drm的一个bug所致。要解决此问题,你需要在xorg.conf中将 <pre><nowiki> Load "dri" </nowiki></pre> 注释掉。结果,你将不再拥有3D加速,但你的系统也不会在冻结了。 * '''我在播放视频时没有任何图像''' 这在使用笔记本电脑时经常发生,这是由于openChrome在某些模块上不能正确支持Xv所致。你可以试试在Xine中将视频驱动改为"gl"或"x11"看看有没有帮助。当你不使用集成LCD而使用外部监视器时,此问题通常不会发生。OpenChrome关于此问题的ticket在这里: http://www.openchrome.org/trac/ticket/40 * '''我的鼠标指针经常消失''' 这已知在VN800和VM800芯片组上会发生。你可以试试在xorg.conf的device section中加入 <pre><nowiki> Option "SWCursor" "true" </nowiki></pre> * '''我装了一个新版本的内核,3D不起作用了''' 你必须重新编译drm内核模块。步骤已在上面描述过了。 * '''当我想编译openchrome 2D driver运行autogen.sh时,我得到了错误提示 ''' <pre><nowiki> configure.ac: 30: required file `./[config.h].in' not found unichrome/Makefile.am:33: via_drv_la_SOURCES defined both conditionally and unconditionally </nowiki></pre> 这是由于安装了多个版本的automake而未正确指定默认版本所致。运行 <pre><nowiki> sudo update-alternatives --config automake </nowiki></pre> 并选择automake-1.9. ==== 译者注 ==== ---- ==== 3D现状 ==== 与openchrome驱动配套的3D驱动可从[http://dri.sourceforge.net/ the DRI project]获得。目前你应该使用Mesa-6.4分枝;最新的貌似能可靠工作的版本是Mesa-6.4.1。参见[http://dri.freedesktop.org/wiki/Building the Building page]获得编译信息。如果你不能使它正常工作,请认真查看[http://wiki.openchrome.org/tikiwiki/tiki-index.php?page=3DTroubleShooting 3DTroubleShooting]。驱动的二进制文件叫做unichrome_dri.so,它将被当做unichrome的3D驱动。在Ubuntu中无须自行编译mesa,只要 <pre><nowiki> sudo apt-get install libgl1-mesa-dri </nowiki></pre> 即可。不过amd64的包里好像没有unichrome_dri.so,不知道为什么。如果没有,可以到Debian那去下载Debian的libgl1-mesa-dri包,将里面的unichrome_dri.so解压到/usr/lib/dri/目录即可。 3D驱动不被openchrome project所维护。事实上,它目前并不被任何人维护并且在Mesa-6.5中似乎有些倒退,例如将软件fallbacks放错地方,缓慢的纹理渲染等等。同时它也有许多导致频繁锁定的bugs,尤其是K8M800芯片组,所以不要对3D抱有太大希望。 3D驱动问题多多的根本原因就是没有人维护,如果你有能力的话,请联系mesa,我们都将感激不尽。 提交Bugs请到[https://bugs.freedesktop.org/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=Mesa&component=Drivers/DRI/Unichrome&version=6.4&version=CVS&version=unspecified&long_desc_type=substring&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailqa_contact2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Bug+Number&field0-0-0=noop&type0-0-0=noop&value0-0-0= freedesktop.org bugzilla]。在提交bugs之前请检查已知的bugs或者向邮件列表询问。
返回
OpenChrome(VIA显卡)
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
登录
导航
首页
最近更改
随机页面
页面分类
帮助
搜索
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息