如何在Ubuntu Lucid Lynx(10.x)上安装XULRunner 1.8.x / libxul0d? Eclipse SWT Browser需要

时间:2010-12-16 01:20:57

标签: eclipse swt xul xulrunner

Ubuntu 10.04.1 64位上的Eclipse SWT 3.3.0中的内部浏览器无法运行。我相信这是因为无法找到libxpcom.so,我相信这是因为没有安装libxul0d软件包。但是,它似乎在Ubuntu 10中删除了,我不知道如何找出原因,它被替换的内容以及我是否可以安全地使用来自karmic的libxul0d。

这主要是一个系统管理问题所以我正在越过superuser.com的帖子,但程序员可能知道答案,我很确定很多人一旦找到答案就会想知道答案。< / p>

错误讯息:

org.eclipse.swt.SWTError: No more handles (java.lang.UnsatisfiedLinkError: no swt-mozilla-gtk-3346 or swt-mozilla-gtk in swt.library.path, java.library.path or the jar file)

这是运行Eclipse SWT 3.3.0的Eclipse RCP应用程序。如果我找到该库并运行ldd libswt-mozilla-gtk-3346.so,我会得到:

linux-vdso.so.1 =>  (0x00007fff269ff000)
libxpcom.so => not found
libnspr4.so => /usr/lib/libnspr4.so (0x00007fbd6470b000)
libplds4.so => /usr/lib/libplds4.so (0x00007fbd64506000)
libplc4.so => /usr/lib/libplc4.so (0x00007fbd64301000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fbd63fed000)
libm.so.6 => /lib/libm.so.6 (0x00007fbd63d69000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007fbd63b52000)
libc.so.6 => /lib/libc.so.6 (0x00007fbd637cf000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007fbd635b1000)
libdl.so.2 => /lib/libdl.so.2 (0x00007fbd633ad000)
/lib64/ld-linux-x86-64.so.2 (0x00007fbd64a73000)

我可以看到libxul0d in karmic有共享库,但该库不在Lucid中。

根据Eclipse SWT FAQ,似乎我需要1.8.x的XULRunner,所以Lucid中的XULRunner 1.9.x无济于事。

那么,我如何找出该软件包发生了什么以及我选择安装什么?请注意,升级Eclipse SWT不是一个选项。

2 个答案:

答案 0 :(得分:1)

  1. 从karmic存储库(NOT lucid)下载以下文件:

    • libmozjs0d(http://packages.ubuntu.com/karmic/amd64/libmozjs0d/download)
    • libxul共用(http://packages.ubuntu.com/karmic/libxul-common)
    • libxul0d(http://packages.ubuntu.com/karmic/libxul0d)
    • xulrunner的(http://packages.ubuntu.com/karmic/xulrunner)
  2. 使用以下命令按给定的顺序安装软件包。

    sudo dpkg -i~ / Desktop / .deb

  3. 请注意,可以使用apt-get来固定业力存储库(https://help.ubuntu.com/community/UbuntuBackports),但我还没试过。

    问题是报告正在通过SWT加载浏览器。然后SWT代码寻找浏览器并尝试查找各种​​所需的共享库。 XULRunner是核心的Firefox浏览功能,现在在清晰的存储库中是v1.9。但是,SWT v3.3.0(正如我们所知)需要v1.8,这是karmic。

答案 1 :(得分:0)

您可以从Mozilla下载较旧的Firefox,例如3.5,然后将存档文件解压缩到某处。然后将java.library.path系统属性的路径添加到 eclipse.ini

-vmargs -Djava.library.path=<somewhere>/firefox-3.5/lib/

或其他方式是将xulrunner 1.8.x下载到某处,然后添加以下vm参数,

-vmargs -Dorg.eclipse.swt.browser.XULRunnerPath=/usr/lib32/xulrunner-1.8.x/