开始配置Project Looking Glass开发版

欢迎加入Project Looking Glass!

本文档可帮您快速完成Project Looking Glass开发版工作环境的配置。

首先您需要设置您的运行环境。运行环境正确设置之后,就可以下载、安装Project Looking Glass 了。

1. 平台要求 软、硬件要求
2. 设置Project Looking Glass运行环境 下载、安装相关组件
3. 安装Project Looking Glass开发版
4. 运行Project Looking Glass 如何启动Project Looking Glass桌面会话
5. 问题解决
6. 与Project Looking Glass保持联系 怎样保持联系
7. 写在最后

1. 平台要求

在您着手设置Project Looking Glass开发环境之前,请先检查一下,看看您的系统是否满足下列最低要求:

项目 Linux平台
操作系统 Project Looking Glass已在Sun Java 桌面系统第1版和第2版、RedHat 9、SuSE Linux 8.1.等系统上测试通过。
CPU 2 GHz,或更快(建议)
RAM 512MB
图形卡*
3D加速图形卡,支持1.2或1.2版以上的OpenGL。
注意:需要24位真彩色。 这方面的配置可参考下列指导。

已经通过测试的图形卡:
关于特定显卡的驱动程序配置,请参考:Project Looking Glass 3D桌面的设备驱动程序安装与配置

如果您发现其它显卡可成功运行Project Looking Glass,请通过下列EMail地址告诉我们: interest@lg3d.dev.java.net

如果您发现特定显卡运行Project Looking Glass会出现问题,请通过下列EMail地址向我们汇报: issues@lg3d-core.dev.java.net
磁盘空间 350MB

2. 设置您的Project Looking Glass环境

您需要先安装几个Java组件,然后才能运行Project Looking Glass。最简单的方法是 按下列顺序逐个下载、安装这些组件。

下载组件:

注: 本安装指导默认您把所有的组件都下载到了/tmp目录下。

  1. Java 2 SDK, 标准版1.5.0 Beta 2 或更近版本
    http://java.sun.com/j2se/1.5.0/download.jsp

    注: 本安装指导默认您下载的是RPM版JDK。

  2. Java 3D SDK 1.3.2-build4 或更近版本
    https://j3d-core.dev.java.net/servlets/ProjectDocumentList

    注: 访问j3d-core/Experimental_Builds/1.3.2-build4 子目录,下载 java3d-1_3_2-build4-linux-i586.tar.gz.

  3. Java高级图象API (JAI) 1.1.2 JDK
    http://java.sun.com/products/java-media/jai/downloads/download-1_1_2.html

    注:选择JDK(TM) 安装:JDK中的安装包下载。阅读并接受软件许可协议,然后选择 Linux JDK安装(jai-1_1_2-lib-linux-i586-jdk.bin)。

安装组件

下载全部组件之后,按下列指导进行安装。

  1. 首先,以root身份登录:

    % su root
    Password:
    输入root密码。
    #

  2. 安装Java 2 SDK:

    # cd /tmp
    # /bin/bash jdk-1_5_0-beta2-linux-i586-rpm.bin
    # rm jdk-1_5_0-beta2-linux-i586.rpm
    # rm jdk-1_5_0-beta2-linux-i586-rpm.bin


  3. 安装Java 3D SDK:

    # cd /tmp
    # tar -zxf java3d-1_3_2-build4-linux-i586.tar.gz
    # cd /usr/java/jdk1.5.0/jre
    # /usr/java/jdk1.5.0/bin/jar xvf /tmp/java3d-1_3_2-build4-linux-i586/j3d-132-build4-linux-x86.jar
    # cd /tmp
    # rm -r java3d-1_3_2-build4-linux-i586


  4. 安装Java高级图象API:

    # cd /usr/java/jdk1.5.0
    # /bin/bash /tmp/jai-1_1_2-lib-linux-i586-jdk.bin


  5. 退出root shell:

    # exit
    %


  6. 现在需要对您的Shell profile里的几个变量进行设置。下面的例子适用于bash(1):

    JAVA_HOME=/usr/java/jdk1.5.0
    PATH=$JAVA_HOME/bin:$PATH

3. 安装Project Looking Glass的开发版

到java.net网站上进行注册

如果您以前未在java.net上注册,那么您需要注册,建立一个帐号:

  1. 访问 http://www.java.net ,在网页顶端点击Register链接。
  2. 输入您的用户名和e-mail地址,然后按[Register]按钮。
  3. 您将会接到一封EMail,告诉您怎样为自己的帐号设置密码。输入您的密码, 并接受java.net网站的参与条款,然后您就可以登录网站了。

下载Project Looking Glass的安装包

  1. 访问https://lg3d-core.dev.java.net ,点击侧面导航条上项目工具栏下的文档&文件
  2. 访问右面树形目录下的lg3d-core/stable_builds。这里有一个表格,里面 列出了稳定的版本。
  3. 点击release_x.y形式的链接 (这里x.y是版本号,例如:0.5),选择想要保存下载文件的目录, 例如: /tmp
  4. 进入您想要安装Project Looking Glass的目录当中,释放文件:

    % cd /home/username
    % tar -zxf /tmp/lg3d-x.y.tar.gz


    注: 您需要将x.y 替换成您所下载的实际版本号(例如:0.5)。

    文件将释放到当前目录下一个名为 lg3d的子目录当中。

设置您的显示色彩深度

Project Looking Glass开发版要求色彩深度为24位。许多系统是按16位深度配置色彩的,这种 情况下Project Looking Glass开发版无法正确运行。您可以运行下列指令,获取当前系统的 色彩深度:

% xdpyinfo | grep "depth of root"
depth of root window:   24 planes

如果显示色彩深度低于24位,您需要更改色彩深度的设置。更改色彩深度设置 的方法在不同平台之间各不相同。请参考下列指导,找出适合于您的平台的 方法:

Java桌面系统1和2,以及SUSE8.1:

  1. 在桌面会话当中运行sax2指令:

    % /usr/X11R6/bin/sax2
    SaX: root Password:
    输入root密码

  2. SaX2应用程序当中,点击Color and Resolution,然后点击[Properties...]按钮,设置当前桌面。
  3. Color selection...面板中,在菜单里选择16.7 Mio. [24 Bit].
  4. Resolution(s) for 16.7 Mio. [24 Bit] colors标签里,选择您想要的屏幕分辨率,然后点击[Ok]
  5. 点击[Finish] 按钮,然后点击[Finalize>>].
  6. 会出现SaX2最后的步骤... 对话框。点击[Test...] 按钮,对新的设置进行测试。
  7. 会出现一个蓝色的测试窗口。如果窗口显示没有问题,就点击[Save]按钮,然后点击[Ok] 保存,回到SaX2窗口,再按[Yes]退出SaX2。
  8. 如果测试窗口无法正确显示,30秒钟之后会自动回到桌面,恢复先前的设置。您应该在24位色彩下多试几种分辨率,找到适合于您的系统的分辨率。
  9. 如果您对设置结果满意,就可以退出,重新登录桌面会话,用前面的xdpyinfo指令验证现在的色彩深度为24位或更高。

RedHat Fedora 2:

  1. 先登录为root:

    % su root
    Password:
    输入root密码
    #

  2. 编辑文件:/etc/X11/xorg.conf
  3. 找到标有Section "Screen"的部分:
  4. 在这部分找到标有: Identifier "Screen0"
    的行,将 DefaultDepthDefaultFbBpp 属性改为:

    DefaultDepth 24
    DefaultFbBpp 32

  5. 保存文件,退出,再重新登陆到桌面会话,用上面的xdpyinfo 指令验证您的色彩深度已经是24位了。

RedHat 8, RedHat 9 及其它Linux平台:

许多Linux平台通过XF86Config文件来设置显示属性。可通过下列方法更改色彩深度:

  1. 首先,登陆为root:

    % su root
    Password:
    输入密码
    #

  2. 编辑该文件:/etc/X11/XF86Config
  3. 找到标有 Section "Screen" 的部分,将 DefaultDepth 属性改为24:

    DefaultDepth     24

  4. 在这部分,找到标有"Display"的子栏目:

    SubSection "Display"

    ,然后将Depth 属性改为:

    Depth     24

  5. 保存文件,退出,然后重新登陆到您的桌面会话,并通过前面的 xdpyinfo 指令验证色彩深度已为24位。

4. 运行Project Looking Glass

运行Project Looking Glass的方式有两种。可以在桌面环境中的一个窗口里运行 ,也可以全屏方式运行。但Project Looking Glass的一个关键优点,就是可以不经 修改运行以前的X11应用程序,这一点只有在全屏模式下才能实现。要想验证Project Looking Glass安装是否正确,最简单的方法是在现有桌面上运行演示程序。如果演示程序能够 正常运行,您就可以将系统设置为全屏运行Project Looking Glass了。注:在3D应用程序 以及窗口管理器(场景管理器)增强功能的开发和测试过程中,在桌面的窗口中运行Project Looking Glass是个好办法。

在现有桌面环境的窗口中运行Project Looking Glass

在这种模式下,Project Looking Glass会话运行在您桌面上的一个窗口当中。这种方式最简单,但只能运行Project Looking Glass 3D应用程序,比如CD 选择器。xterm之类的X11应用程序将会显示在X会话当中。

  1. 用您的帐号登陆,进入Project Looking Glass安装目录:

    % cd /home/username/lg3d/bin

  2. 启动Project Looking Glass会话:

    % ./lg3d-dev

如果您已经成功安装了Project Looking Glass,您就应该可以看到运行在一个窗口里的Project Looking Glass了。

Project Looking Glass Screenshot

点击任务条上的CD图标,就可以打开CD浏览器,- 一个3D演示程序。 把鼠标移到CD架上,点击CD图象,观察应用程序是怎样动作的。要想了解更多 操作信息,可在任务条上点击CD浏览器左边的图标,这时会弹出一个面板,介绍 这个演示程序所支持的各项功能。注:最左边的电脑图标是用来执行xterm窗口的,这样可以演示X11应用程序在Project Looking Glass中集成的情况。只有在全屏 模式下,这个图标才有效。关于全屏方式的配置,请参阅下一部分。

全屏运行Project Looking Glass

通过这种方式,您可以全屏运行Project Looking Glass,并在里面运行各种应用程序, 包括本地X11应用程序。全屏运行Project Looking Glass之前,您必须先退出X会话。只有在Linux系统中,才能采用这种模式运行。最终,这种模式将成为LG3D的主要 运行模式,不仅在Linux,而且在Solaris系统中也要实现。

注:关于全屏模式,还有大量工作需要完成。到目前为止,仅有少数X11应用程序 可在这种模式下顺利运行而不出任何错误。还有很多方面需要完善。一些重要的应用程序,例如:mozilla、staroffice、evolution、realplayer,以及大部分 GNOME应用程序的集成还存在明显问题。我们正积极地对这些问题进行总结。如果您遇到了什么问题,请向我们汇报。

关于不同平台,我们提供了不同的指南,请按照与您的平台相对应的指南进行操作。如果您的平台在这里没列出来,那您只好参照这些指南进行操作,遇到不同的地方请告诉我们。

Sun Java Desktop System/SuSE 8.1:

JDS/SuSE 8.1 采用X 显示管理器 (xdm)来管理用户会话。要想运行Project Looking Glass,您必须先关掉xdm。因为xdm是自动加载的,所以必须通过 chkconfig 指令关闭xdm:

  1. 先登陆为root:

    % su root
    Password:
    输入root密码
    #

  2. 关闭xdm服务:

    # /sbin/chkconfig -d xdm
    xdm  0:off   1:off   2:off   3:off   4:off   5:off   6:off

  3. 现在关闭所有桌面应用程序,保存所有打开的文件。然后关掉显示管理器:

    # pkill gdm-binary

  4. 现在跳到启动Project Looking Glass桌面会话部分。

注:要想重新激活X显示管理器,需要登陆为root,输入下列指令,然后重启系统:

# /sbin/chkconfig -a xdm

RedHat 9:

RedHat9采用GNOME显示管理器(gdm)来管理用户会话。您只需切换为低级别运行状态,这样gdm就不活动了,而不必禁用gdm。

  1. 首先,登陆为root:

    % su root
    Password:
    输入root密码
    #

  2. 关闭所有桌面应用程序,保存所有打开的文件。然后切换到运行级4上:

    # /sbin/init 4

    这样您的X会话就会中止,您会回到控制台提示符状态。

  3. 现在跳到启动 Project Looking Glass桌面会话部分。

注:要想重新运行GNOME显示管理器,可以root身份登陆,在控制台输入下列指令:

# /sbin/init 5

Fedora Core 3 64-bit:

要在64-bit版Fedora Core 3 上运行Project Looking Glass,需要做一些特别的改动。 注:需要访问32位Linux系统或32位X11模块才能实现这些改动。

  1. 您需要将32位Linux系统 /usr/X11R6/lib/modules 目录下的内容拷到64位系统同名目录下。进行这一步之前,别忘了先备份64位系统/usr/X11R6/lib/modules 目录下的内容:

    # cd /usr/X11R6/lib
    # cp -r modules modules.orig

    然后,用scp指令将32位系统下的相关文件安全拷贝到64位系统下:

    # scp -r root@32bithost:/usr/X11R6/lib/modules /usr/X11R6/lib/modules

    其中32bithost 是32位Linux系统的主机名称。

  2. 请确保您的xorg.conf 文件已将色彩深度设为24位,如下黑体所示:

    Section "Screen"
    Identifier "Screen0"
    Device "Videocard0"
    Monitor "Monitor0"
    DefaultDepth 24
    SubSection "Display"
    Viewport 0 0
    Depth 24
    Modes "1680x1050" "1280x800" "1024x768" "800x600" "640x480"
    EndSubSection
    EndSection

  3. 进行到下一部分,按全屏方式启动Project Looking Glass

    [这部分指南内容由 qgonjonmarve提供,向他们表示敬意!参阅 这个话题。]

启动Project Looking Glass桌面会话

从控制台(而不是在X会话当中)启动Project Looking Glass的方法:

  1. 登陆为root,进入Project Looking Glass的安装目录:

    # cd /home/username/lg3d/bin

  2. 启动Project Looking Glass桌面会话

    # ./lg3d-session

    几秒钟后,Project Looking Glass桌面就会显示出来。恭喜您!如果您启动Project Looking Glass桌面会话时遇到问题,请参考 问题的解决 部分,寻求帮助。

现在,您可以在Project Looking Glass桌面上遨游,发挥您的想象力,创造性 地开发3D程序了! 如果您已经准备要进行开发了,请跳到 Project Looking Glass开发指南,了解Project Looking Glass程序开发方面的信息。

5. 问题的解决

no core pointer

RedHat Fedora Core 2上会出现这个问题,其它的系统可能也会出现这 个问题。可以登陆为root,按下列方法临时解决这个问题(由sgiunchi提供):

# ln -s /etc/X11/xorg.conf /etc/X11/XF86Config-4

如果要想一劳永逸地解决这个问题,需要对lg3d-core中包含的X11的版本进行升级。现行版本是Xorg 6.7,需要把这个版本升级为Xorg最新发布的稳定版本。

"main"线程中出现下列异常: java.lang.UnsatisfiedLinkError: /usr/java/jdk1.5.0/jre/lib/i386/libj3dcore-ogl.so:
/usr/java/jdk1.5.0/jre/lib/i386/libj3dcore-ogl.so: symbol glMultiDrawArraysEXT, version LIBGL not defined in file libGL.so.1 with link time reference

导致这个问题的原因是,ATI设备驱动程序缺少glMultiDrawArraysEXT扩展。 解决方法是,到Direct Rendering Open Source (DRI)项目去寻找驱动程序,替换掉Radeon的驱动程序。 关于安装过程,可参考 ATI Radeon DRI驱动程序.

注:将libGL.so升级为最新的Mesa程序库并不能解决这个问题。

pkill: 27863 - Operation not permitted
java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
      java.net.BindException: Address already in use...

这段提示信息是说,rmiregistry 进程已在运行,lg3d-dev 无法再新建一个实例。典型情况下,当 rmiregistry 由root用户启动,而lg3d-dev lg3d由非root用户运行时,就会出现这种错误。解决方法是,不要以root身份启动rmiregistry进程。登陆为root,结束这个进程:

% su root
Password: 输入root密码
# pkill rmiregistry
# exit

现在就可以用非root身份运行 lg3d-dev 指令,启动Project Looking Glass了。

Fatal Server error: Cannot establish any listening sockets

当您用lg3d-session启动Project Looking Glass时,会出现下列错误提示:

_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running

Fatal server error:
Cannot establish any listening sockets - Make sure an X server
isn't already running

首先,请确定您想要启动lg3d-session的显示屏上没有X11在运行。 然后检查一下,能不能找到/tmp/.X11-unix/X0 文件,这是上次会话遗留下来的文件。删掉这个文件,再重新启动lg3d-session,即可解决问题。

屏幕更新特别慢

这通常是显卡配置不当造成的。首先,可做下列检查:

libGL error: failed to open DRM: operation not permitted

(运行lg3d-dev时可能会遇到这个问题)。

如果即使3D加速已经打开,Project Looking Glass运行仍然非常慢,那么请检查 一下控制台上有没有下列提示:

libGL error: failed to open DRM: Operation not permitted
libGL error: reverting to (slow) indirect rendering

如果有,说明您登陆的帐号没有权限运行DRI (基层直接渲染)。有的情况下只有 root才有权限访问DRI。好像只有RedHat存在这个问题,而JDS、SuSE不会遇到 这个问题。如果您遇到了这个问题,可在XFree86Config或XF86Config 文件中将DRI权限设为:

Section "DRI"
Group "video"
Mode 0666
EndSection

您还需要在 /etc/security/console.perms中将<dri> profile从0600改为0666:

<xconsole> 0600 <dri> 0666 root

如果您用的是NVIDIA卡,请将/dev/nvidia*权限改为0666:

# chmod a+rw /dev/nvidia*

An unexpected exception has been detected in native code outside the VM

尽管已经打开了3D加速,还是提示下列错误信息,Project Looking Glass随之退出:

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0x0
Function=[Unknown.]
Library=(N/A)

请检查错误提示中有没有下列内容:

<addr-range> r-xp 00000000 03:05 61763 /usr/lib/GL/libGL.so.1.3.mesasoft
<addr-range> rw-p 001b4000 03:05 61763 /usr/lib/GL/libGL.so.1.3.mesasoft

如果有,说明您安装了MESA软件OpenGL库。用安装包工具(例如:rpm)卸载这些 程序库,然后用root身份登陆,到 /usr/lib 检查一下,确保存在下列符号关联,并且指向了正确的OpenGL库。关联格式如下 (其中x、y为数字):

libGLcore.so.1 -> libGLcore.so.1.x
libGL.so -> libGL.so.x
libGLU.so -> libGLU.so.x.y

如果关联不正确,您需要登陆为root,把它们改正过来。比方说,如果您有一个 libGLU.so.1文件,却没有libGLU.so 关联,那就需要创建一个:

# ln -s /usr/lib/libGLU.so.1 /usr/lib/libGLU.so

对于每一个缺失的关联,都按同样的方法创建。

Failed to load the NVIDIA driver

有若干个原因可能导致这个驱动程序加载失败:

参阅:

Project Looking Glass开发版说明

关于目前存在的问题的更多信息,可在lg3d-core 项目工具> 问题跟踪下找到。您可以对您遇到的问题进行查询。

6. 与Project Looking Glass 保持联系

Project Looking Glass项目处于不断的进展当中。了解Project Looking Glass最新进展的最好方式是订阅Project Looking Glass邮件组,点击 侧面导航条上项目工具 栏目下的邮件组 https://lg3d.dev.java.net/即可。 根据您的兴趣所在,有若干个专题的邮件组可供您选择。

7. 写在最后的话

感谢您花时间访问本站,感谢您对Project Looking Glass的支持!  我们希望您加入我们的项目,和我们 分享项目开发的乐趣和机会。

Project Looking Glass开发小组

参阅:

Project Looking Glass开发版说明
Project Looking Glass开发人员指南
为Project Looking Glass的3D桌面安装和配置驱动程序


$修订版本: 1.18 $ $日期: 2004/10/11 16:51:32 $