I need to create an executable application. This applications
uses the Browser class. The rendering engine is WebKit. Platform is linux
gentoo 64 bit.
I downloaded swt-3.7.2-gtk-linux-x86_64.zip and added its swt.jar to the
path of my application. When I run the application I get:
Exception in thread "main" org.eclipse.swt.SWTError: No more
handles
at org.eclipse.swt.SWT.error(SWT.java:4308)
at org.eclipse.swt.SWT.error(SWT.java:4197)
at org.eclipse.swt.SWT.error(SWT.java:4168)
I am starting the application with:
-Dorg.eclipse.swt.browser.DefaultType=webkit
LD_LIBRARY_PATH = /usr/lib64:/usr/lib64/firefox:/lib/usr/lib64/mozillla:/home/mansour/.swt/lib/linux/x86_64
Running the application generates *.so files under /home/mansour/.swt/lib/linux/x86_64
, and running ldd on the relevant one:
10:29:27 @ x86_64 $ ldd libswt-webkit-gtk-3740.so
linux-vdso.so.1 => (0x00007fffb1bff000)
libwebkitgtk-1.0.so.0 => /usr/lib64/libwebkitgtk-1.0.so.0
(0x00007f5f4db95000)
libgtk-x11-2.0.so.0 => /usr/lib64/libgtk-x11-2.0.so.0
(0x00007f5f4d554000)
libsoup-2.4.so.1 => /usr/lib64/libsoup-2.4.so.1 (0x00007f5f4d2e8000)
libgdk-x11-2.0.so.0 => /usr/lib64/libgdk-x11-2.0.so.0
(0x00007f5f4d032000)
libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x00007f5f4ce0e000)
libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0
(0x00007f5f4cbde000)
libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0
(0x00007f5f4c9d0000)
libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0
(0x00007f5f4c7af000)
libpng12.so.0 => not found
libm.so.6 => /lib64/libm.so.6 (0x00007f5f4c52b000)
libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x00007f5f4c1f6000)
libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0
(0x00007f5f4bfa3000)
libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007f5f4bcf1000)
libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1
(0x00007f5f4baaf000)
libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0 (0x00007f5f4b75e000)
libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0
(0x00007f5f4b50b000)
libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0
(0x00007f5f4b307000)
libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0
(0x00007f5f4b101000)
librt.so.1 => /lib64/librt.so.1 (0x00007f5f4aef8000)
libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f5f4abc3000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5f4a9a5000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5f4a616000)
libjavascriptcoregtk-1.0.so.0 => /usr/lib64/libjavascriptcoregtk-1.0.so.0
(0x00007f5f4a10d000)
libgailutil.so.18 => /usr/lib64/libgailutil.so.18
(0x00007f5f49f04000)
libgstapp-0.10.so.0 => /usr/lib64/libgstapp-0.10.so.0
(0x00007f5f49cf7000)
libgstinterfaces-0.10.so.0 => /usr/lib64/libgstinterfaces-0.10.so.0
(0x00007f5f49ae5000)
libgstpbutils-0.10.so.0 => /usr/lib64/libgstpbutils-0.10.so.0
(0x00007f5f498c0000)
libgstvideo-0.10.so.0 => /usr/lib64/libgstvideo-0.10.so.0
(0x00007f5f496b2000)
libgstbase-0.10.so.0 => /usr/lib64/libgstbase-0.10.so.0
(0x00007f5f49461000)
libgstreamer-0.10.so.0 => /usr/lib64/libgstreamer-0.10.so.0
(0x00007f5f49172000)
libjpeg.so.8 => /usr/lib64/libjpeg.so.8 (0x00007f5f48f16000)
libxslt.so.1 => /usr/lib64/libxslt.so.1 (0x00007f5f48cda000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007f5f4893a000)
libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x00007f5f48709000)
libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x00007f5f48429000)
libicui18n.so.49 => /usr/lib64/libicui18n.so.49 (0x00007f5f4800a000)
libicuuc.so.49 => /usr/lib64/libicuuc.so.49 (0x00007f5f47c80000)
libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007f5f47a75000)
libXt.so.6 => /usr/lib64/libXt.so.6 (0x00007f5f47804000)
libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007f5f474b6000)
libz.so.1 => /lib64/libz.so.1 (0x00007f5f4729f000)
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/libstdc++.so.6
(0x00007f5f46f92000)
libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007f5f46d8b000)
libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007f5f46b75000)
libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007f5f46964000)
libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007f5f4675a000)
libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007f5f4654d000)
libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1
(0x00007f5f4634a000)
libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007f5f46147000)
libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00007f5f45eb3000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f5f45ca1000)
libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007f5f45a71000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f5f4585a000)
libffi.so.5 => /usr/lib64/libffi.so.5 (0x00007f5f45651000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f5f4544c000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5f4f885000)
libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/libgcc_s.so.1
(0x00007f5f45235000)
libicudata.so.49 => /usr/lib64/libicudata.so.49 (0x00007f5f43f15000)
libSM.so.6 => /usr/lib64/libSM.so.6 (0x00007f5f43d0c000)
libICE.so.6 => /usr/lib64/libICE.so.6 (0x00007f5f43aed000)
libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007f5f438cb000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f5f436c5000)
libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007f5f434c1000)
libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007f5f432bb000)
I am initializing the browser with:
browser = new Browser(browserPanel, SWT.WEBKIT);
My questions :
1- how do I get rid of this error message and debug the application under
eclipse.
2- If I need to create executables using gcj, targeting windows. I will
need to build cross compiler, but how do I make all the libraries available
so that the user don't need to download anything else ?
Thank you.