Битторрент-клиент Azureus/Vuze на платформе Planetlab
Я работаю над узлом (64-разрядный) испытательного стенда под названием Planetlab. Путь Java установлен и простые файлы JAR работают. Мне нужно запустить битторрент-клиент Azureus/Vuze на этом узле. Он запускается в Ubuntu путем извлечения tar-файла установщика Vuze, а затем с помощью команды "./vuze". Когда я пытаюсь запустить его на узле, я столкнулся с такими:
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.
Каковы причины этого?
1 ответ
Решение
Причина в следующем:
/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
невозможно найти.
Вам нужно будет установить эту системную библиотеку, используяyum
,
Сначала найдите пакет, который содержит библиотеку:
yum whatprovides */libgtk-x11-2.0.so.0
Затем установите пакет, который он указывает.
yum install gtk2