linux - Planetlab 平台上的 Azureus/Vuze BitTorrent 客户端

标签 linux bittorrent testbed vuze

我正在开发名为 Planetlab 的测试平台的节点(64 位)。 java 路径已设置,简单的 jar 文件正在运行。我必须在此节点上运行 Azureus/Vuze bittorrent 客户端。它通过提取 Vuze 的安装程序 tar 文件然后使用命令“./vuze”在 Ubuntu 上运行。当我尝试在节点上运行它时,我遇到了这些:

Starting Azureus...
Suitable java version found [java = 1.6.0_16]
Configuring environment...
Java exec found in PATH. Verifying...
Browser check failed with: Could not load SWT library. Reasons: 
    no swt-pi-gtk-4403 in java.library.path
    no swt-pi-gtk in java.library.path
    /home/ku_green/.swt/lib/linux/x86/libswt-pi-gtk-4403.so: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
    Can't load library: /home/ku_green/.swt/lib/linux/x86/libswt-pi-gtk.so

Auto-scanning for GRE/XULRunner.  You can skip this by appending the GRE path to LD_LIBRARY_PATH and setting MOZILLA_FIVE_HOME.
Browser check failed with: Could not initialize class org.eclipse.swt.widgets.Display
Can't create browser.  Will try to set LD_LIBRARY_PATH and hope Vuze has better luck.
GRE/XULRunner automatically found
Loading Azureus:
java -Xmx128m -cp "./Azureus2.jar:./swt.jar" -Djava.library.path="/home/ku_green/vuze" -Dazureus.install.path="/home/ku_green/vuze" -Dazureus.script="./vuze" -Dazureus.script.version=3 org.gudy.azureus2.ui.swt.Main 
file:/home/ku_green/vuze/Azureus2.jar ; file:/home/ku_green/vuze/swt.jar ; file:/home/ku_green/vuze/
changeLocale: *Default Language* != English (United States). Searching without country..
changeLocale: Searching for language English in *any* country..
changeLocale: no message properties for Locale 'English (United States)' (en_US), using 'English (default)'
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.gudy.azureus2.ui.swt.Main.<init>(Main.java:114)
    at org.gudy.azureus2.ui.swt.Main.main(Main.java:325)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.aelitis.azureus.launcher.MainExecutor$1.run(MainExecutor.java:37)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
    no swt-pi-gtk-4403 in java.library.path
    no swt-pi-gtk in java.library.path
    /home/ku_green/.swt/lib/linux/x86/libswt-pi-gtk-4403.so: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
    Can't load library: /home/ku_green/.swt/lib/linux/x86/libswt-pi-gtk.so

    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:327)
    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:236)
    at org.eclipse.swt.internal.gtk.OS.<clinit>(OS.java:31)
    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
    at org.eclipse.swt.widgets.Display.<clinit>(Display.java:133)
    at org.gudy.azureus2.ui.swt.mainwindow.SWTThread.<init>(SWTThread.java:85)
    at org.gudy.azureus2.ui.swt.mainwindow.SWTThread.createInstance(SWTThread.java:64)
    at com.aelitis.azureus.ui.swt.Initializer.<init>(Initializer.java:163)
    ... 12 more
Exit from Azureus complete
No shutdown tasks to do
Azureus TERMINATED.

这是什么原因呢?

最佳答案

原因是这样的:

    /home/ku_green/.swt/lib/linux/x86/libswt-pi-gtk-4403.so: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

SWT 需要 GTK 库,但您的系统上不存在它们。具体来说,找不到 libgtk-x11-2.0.so.0

您需要install this system library using yum .

首先找到包含该库的包:

yum whatprovides */libgtk-x11-2.0.so.0

然后安装它指示的软件包。

yum install gtk2

关于linux - Planetlab 平台上的 Azureus/Vuze BitTorrent 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20456105/

相关文章:

c++ - 如何让 Box2D 只创建一个实体实例?

linux - 将二进制文件导入 NASM

linux - 无法进行正确匹配

java - System.exit 在 Linux 上不是线程安全的?

java - SQLException:找不到适合 jdbc 的驱动程序:mysql://localhost:3306/dbname

python - 运行 Bram Cohen 的原始 BitTorrent 源 (Python)

c - 是否可以使用跟踪服务器来建立我自己的点对点网络?

python - 下载 python3 中指向的 torrent 文件内容

google-app-engine - Google App Engine 的测试台 stub 'search'

c - 正则表达式测试台