4

我正在使用 JOGL 编写一个桌面应用程序,并在 Win/Mac/Linux 上进行部署。在 Linux 上,我们发现安装的 OpenGL 库并不总是能够胜任工作,我们需要能够切换我们自己的软件仿真 OpenGL。自然我们希望我们可以将库放置/usr/lib 之后或/之前usr/lib 支持我们的或默认的。

事实证明,我们的被 JOGL 优先接收。有谁知道 JOGl 库是否进行特殊处理以寻找 libGL 等,可能更喜欢更高版本而不是更早版本?欢迎任何信息。

4

1 回答 1

3

我假设 JOGL 的 Java 端使用 JNI(Java 本机接口)与本机库进行交互。JNI 使用这个 Java 系统变量java.library.path来查找本地库。您可以在运行 Java 应用程序时使用 -D 开关在命令行上设置它:

java -Djava.library.path=/some/path mypackage.MyProgram

也可能是本机系统本身没有选择正确的 OpenGL 库。在 Linux 上,您可以设置环境变量 LD_LIBRARY_PATH 来指定 Linux 应该在哪里查找共享库。本页解释更多(参见第 3.3.1 节)。

请注意,您可以在 JOGL 主页上获得 JOGL 的源代码,所以如果您真的想知道,可以下载并开始深入研究。

(为什么会有一个愚蠢的限制“新用户只能发布一个超链接”????)

于 2009-08-05T13:19:50.727 回答