11

I have installed Ubuntu 12.04 newly. Also i installed Java 7. I try to install eclipse-java-indigo-SR2-linux-gtk.tar.gz. i extracted this file in /home/ramprabhu location. Then i try to run eclipse executable file. I got error as see the log file.

My log file:

 !SESSION 2012-06-10 22:47:35.959 -----------------------------------------------
eclipse.buildId=M20120208-0800
java.version=1.7.0_04
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os linux -ws gtk -arch x86 -product org.eclipse.epp.package.java.product

!ENTRY org.eclipse.osgi 4 0 2012-06-10 22:47:36.757
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
    /home/ramprabhu/eclipse/configuration/org.eclipse.osgi/bundles/247/1/.cp/libswt-pi-gtk-3740.so: libXtst.so.6: cannot open shared object file: No such file or directory
    no swt-pi-gtk in java.library.path
    /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk-3740.so: /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk-3740.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)
    Can't load library: /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk.so

    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:285)
    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:194)
    at org.eclipse.swt.internal.gtk.OS.<clinit>(OS.java:22)
    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:132)
    at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:695)
    at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161)
    at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:153)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:95)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

I am not able to run eclipse. How to solve this problem and run eclipse.

Rakib
  • 12,376
  • 16
  • 77
  • 113
Ramprasad
  • 7,981
  • 20
  • 74
  • 135

7 Answers7

55

Try with the following command

  • 64 Bits System: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

  • 32 Bits System: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

iblue
  • 29,609
  • 19
  • 89
  • 128
Andres Mora
  • 559
  • 3
  • 2
  • Had the same problem and for my 32 bit system just a copy paste of the above command saved me! Thank you! – Vagelism Nov 29 '12 at 19:31
7

worked it out by copying the libswt files to ~/.swt/lib/linux/x86(or x86_64)

for 32 bit:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

for 64 bit:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/
Rakib
  • 12,376
  • 16
  • 77
  • 113
6

I came across this error when tried to start 32-bit build of Eclipse under 64-bit linux. The problem was solved after installing ia32-libs package.

Dmitry Bespalov
  • 5,179
  • 3
  • 26
  • 33
4

I faced with this problem after installing QNX Momentic IDE (it based on 32-bit eclipse distribution) for Blackberry 10 development. I haven't chance to install ia32-libs because

$ sudo apt-get install ia32-libs Reading package lists... Done Building dependency tree
Reading state information... Done Package ia32-libs is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: lib32asound2 lib32z1 lib32ncurses5 lib32bz2-1.0

E: Package 'ia32-libs' has no installation candidate

I found solution in this post

sudo aptitude install libc6:i386 libstdc++6:i386 libatk1.0-0:i386 libc6:i386 libcairo2:i386 libexpat1:i386 libffi6:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgdk-pixbuf2.0-0:i386 libglib2.0-0:i386 libgtk2.0-0:i386 libpango1.0-0:i386 libpcre3:i386 libpixman-1-0:i386 libpng12-0:i386 libselinux1:i386 libstdc++6:i386 libx11-6:i386 libxau6:i386 libxcb1:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxtst6:i386 zlib1g:i386

I'm sure this solution will help with simple 32-bit eclipse also

CAMOBAP
  • 5,523
  • 8
  • 58
  • 93
  • Thanks. This worked. Also check the error log to see any other dependencies. –  Sep 20 '14 at 19:01
4

Here is how i solved the issue aptitude search libswt-gtk

Then sudo apt-get install the ones not installed enter image description here

3

You are mixing 64-bit and 32-bit. Download the 64-bit version of Eclipse and use the 64-bit version of Java 7.

Andrew T Finnell
  • 13,417
  • 3
  • 33
  • 49
  • how do i understand if eclipse is 32 bit or java is 32 bit? I was using synaptic to install jdk7 from the webupd8 ppa and to install eclipse. – Rakib Jun 27 '12 at 10:56
  • 1
    running `java -version` will show you 32-bit or 64-bit mode. A quick way to find if Eclipse is 32 or 64-bit is to do `find . -name 'org.eclipse.swt*.jar'` and see if it returns x86_64 for swt – Andrew T Finnell Jun 27 '12 at 12:27
  • 1
    executing `java -version` says: `java version "1.6.0_26" - Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11M3720) - Java HotSpot(TM) Client VM (build 20.1-b02-383, mixed mode)` So, is this 32bit or 64bit? – Rakib Jul 01 '12 at 00:18
0

had the same problem with with my 64bit system, the ln is solution worked, magic, 64 Bits System: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

johng
  • 21