From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25470 invoked by alias); 10 Jan 2012 23:40:32 -0000 Received: (qmail 25352 invoked by uid 22791); 10 Jan 2012 23:40:30 -0000 X-SWARE-Spam-Status: No, hits=-1.0 required=5.0 tests=BAYES_00,FREEMAIL_FROM,SARE_FREE_WEBM_LAPOSTE,SPF_HELO_PASS,TW_GT,TW_ML,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from lo.gmane.org (HELO lo.gmane.org) (80.91.229.12) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 10 Jan 2012 23:40:12 +0000 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1RklIY-0005nq-TA for java@gcc.gnu.org; Wed, 11 Jan 2012 00:40:10 +0100 Received: from mic92-13-88-165-230-244.fbx.proxad.net ([88.165.230.244]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 11 Jan 2012 00:40:10 +0100 Received: from yleny by mic92-13-88-165-230-244.fbx.proxad.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 11 Jan 2012 00:40:10 +0100 To: java@gcc.gnu.org From: Yannick Subject: Gnu Classpath on HP webOS : connexion problem between escher and X server / or loadling escher problem by Gnu classpath Date: Tue, 10 Jan 2012 23:40:00 -0000 Message-ID: References: <1259555306.23081.4.camel@bapbop> <4B13994B.4060604@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.24) Gecko/20111108 Mandriva/3.1.16-0.1mdv2010.2 (2010.2) Thunderbird/3.1.16 In-Reply-To: <4B13994B.4060604@redhat.com> X-IsSubscribed: yes Mailing-List: contact java-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-owner@gcc.gnu.org X-SW-Source: 2012-01/txt/msg00001.txt.bz2 Hello, I try to create a Java J2SE (Java Desktop) port to HP webOS with Gnu Claspath and JamVVM. You can find my working page here : Building JamVM and GNU Classpath and Jikes (for Java support in webOS) with scratchbox2 http://www.webos-internals.org/wiki/Building_JamVM_and_GNU_Classpath_and_Jikes_%28for_Java_support_in_webOS%29_with_scratchbox2 All the compilation options and installation steps for Gnu Classpath 0.98, escher 0.3.0, javm 1.5.4 are detailed in the web page here : http://www.webos-internals.org/wiki/Building_JamVM_and_GNU_Classpath_and_Jikes_%28for_Java_support_in_webOS%29_with_scratchbox2 1) I patch Gnu Classpath 0.98 with the patch here http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41057 to compile and install it with escher 0.3.0. 2) I use this line for compiling Gnu Classpath : LDFLAGS="-L/usr/local/lib -Wl,-rpath=/media/internal/opt/lib" CPPFLAGS="-I/usr/local/include" ./configure --prefix=/media/internal/opt --disable-examples --with-x --disable-gtk-peer --disable-gconf-peer --disable-plugin --disable-alsa --disable-dssi --with-escher=/home/ubuntu/java-project/escher-0.3/src --enable-local-sockets --enable-collections --enable-xmlj 3) Makefile for X server binaries on webos : http://git.webos-internals.org/preware/cross-compile/tree/packages/x/xserver-package/Makefile 4) Packagind and script to use X server on webOS : http://git.webos-internals.org/x11/xserver/tree/ My problem is that escher, a Java lib that is a Java client, can not connect to the X server or that Gnu Classpath can find the escher lib/java classes. How works escher : http://marcosroriz.wordpress.com/2010/06/14/gsoc-updates/ In my webOS process list, I have : root@Palm Pre:/media/cryptofs/apps/usr/palm/applications/org.webosinternals.xserver/bin# ps -edf ... root 1902 1 2 04:38 ? 00:00:38 /media/cryptofs/apps/usr/palm/applications/org.webosinternals.xserver/bin/Xsdl -retro -noreset :0.0 root 1936 1 0 04:38 ? 00:00:00 /media/cryptofs/apps/usr/palm/applications/org.webosinternals.xterm/bin/xterm -display :0.0 -maximize -xrm *metaSendsEscape: true -u8 -e login -p -f root ... When I launch the JRE and with Xterm started, I have the following error message : root@Palm Pre:/media/internal# /media/internal/opt/bin/jamvm HelloWorld -bootclasspath /media/internal/opt/share/jamvm/classes.zip:/media/internal/opt/share/classpath/glibj.zip:/media/internal/ opt/share/classpath/escher-0.3.jar:/media/internal/opt/share/classpath/collections.jar HelloWorld -Dawt.toolkit=gnu.java.awt.peer.x.XToolkit HelloWorld Exception in thread "main" java.awt.AWTError: Cannot load AWT toolkit: gnu.java.awt.peer.gtk.GtkToolkit at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:607) at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:103) at java.awt.Window.(Window.java:133) at java.awt.Frame.(Frame.java:246) at java.awt.Frame.(Frame.java:234) at HelloWorld.(HelloWorld.java:7) at HelloWorld.main(HelloWorld.java:5) Caused by: java.lang.UnsatisfiedLinkError: Native library `gtkpeer' not found (as file `libgtkpeer.so') in gnu.classpath.boot.library.path and java.library.path at java.lang.Runtime.loadLibrary(Runtime.java:763) at java.lang.System.loadLibrary(System.java:670) at gnu.java.awt.peer.gtk.GtkToolkit.(GtkToolkit.java:177) at java.lang.VMClass.forName(Native Method) at java.lang.Class.forName(Class.java:233) at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:583) ...6 more But here Gnu Classpath is not compiled to use libgtkpeer.so (c/C++ lib with Qt or GTK) but escher java lib. And I found no error when I launch it in webos /var/log/messages file. In escher documentation on the Internet, I found that : * To test X Awt peer, you must remove "-nolisten TCP" from XServer start script. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41057 *in console type the command line xhost+ http://rbytes.net/linux/escher-review/ The problem is that I can not change the XServer start script used by webOS. I have no xhost script or binary on my webOS device. Here : http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41057 I found a patch that I have applied on Gnu Classpath 0.98 to use it with escher 0.3.0 and in the diff for this patch : http://gcc.gnu.org/bugzilla/attachment.cgi?id=18352&action=diff you can find the line display = new Display(socket, "localhost", displayName.display_no, displayName.screen_no); Do I need to use login and a password for connexion with the X server on webOS device ? Can you help me to : 1) to check that all is OK with escher and my Gnu Classpath ? 2) to check conexion problem between Gnu Classpath/escher and the X server ? My goal is to create the webOS internals's Java Desktop PDK for webOS as webOS PDK with C/C++. Thank you for your help. Best regards Yannick