From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15816 invoked by alias); 31 Dec 2009 14:49:44 -0000 Received: (qmail 15808 invoked by uid 22791); 31 Dec 2009 14:49:44 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 31 Dec 2009 14:49:37 +0000 Received: from int-mx04.intmail.prod.int.phx2.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.17]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id nBVEnZx3026973 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 31 Dec 2009 09:49:35 -0500 Received: from zebedee.pink (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx04.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id nBVEnYML019969; Thu, 31 Dec 2009 09:49:34 -0500 Message-ID: <4B3CB9FD.6090902@redhat.com> Date: Thu, 31 Dec 2009 14:49:00 -0000 From: Andrew Haley User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091209 Fedora/3.0-4.fc12 Thunderbird/3.0 MIME-Version: 1.0 To: java@gcc.gnu.org Subject: Re: GCCMain not found & test suite errors fatal? References: <4B3CB6EC.6000907@pon.net> In-Reply-To: <4B3CB6EC.6000907@pon.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit 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: 2009-12/txt/msg00071.txt.bz2 On 12/31/2009 02:36 PM, John Poole wrote: > I need help with two issues. > > Background: > I'm trying to install a Java development and runtime environment on the > Marvell SheevaPlug which runs off an ARMv5t processor. > > I currently have Gentoo installed on my SheevaPlug. Gentoo does not > support Java for the ARMv5t platform. I do know that Java works on the > SheevaPlug as other people using an identical SheevaPlug have Ubuntu or > other flavors of Linux installed and they are able to install a Java > runtime and java based programs. Moreover, Sun offers a run time > environment, but Sun charges for it. I would like to be able to set up > a run time environment within Gentoo on the SheevaPlug without having to > pay for a license or buy a black box technology. > > I therefore undertook to compile icedtea6-1.6 and ran into a circular > dependency of ANT. ANT needs Java to install. I logged Bug 387 with > Iced Tea and I was advised to "use gcj to build openjdk build > dependencies and bootstrap openjdk using gcj." That endeavor brings me > to this list. > > I was able to successfully make Revision: 155206 of > svn://gcc.gnu.org/svn/gcc/trunk. > > I was unable to compile a test class, and logged Bug 42405; my problem > had been failing to specify a library path; the comment "Make sure your > install library path is in LD_LIBRARY_PATH." worked insofar as it got me > past the error message > "/usr/local/gcj/usr/local/bin/../libexec/gcc/armv5tel-unknown-linux-gnueabi/4.5.0/ecj1: > error while loading shared libraries: libgcj_bc.so.1: cannot open shared > object file: No such file or directory ." By using these two commands, > I was able to move past the problem: > export LD_LIBRARY_PATH=/usr/local/gcj/usr/local/lib > ./gcj -v -I /usr/local/gcj/usr/local/share/java/libgcj-4.5.0.jar > /var/work/gcj/HelloWorld.java > > > Issue #1: > I then came across a new error, > "org.eclipse.jdt.internal.compiler.batch.GCCMain" class not found, and > opened Bug 42409 to track it. I imagine you haven't installed ecj.jar: --------------------------------------------------------------------------- The following options apply to building `libgcj'. General Options --with-ecj-jar=filename This option can be used to specify the location of an external jar file containing the Eclipse Java compiler. A specially modified version of this compiler is used by gcj to parse .java source files. If this option is given, the `libjava' build will create and install an ecj1 executable which uses this jar file at runtime. If this option is not given, but an ecj.jar file is found in the topmost source tree at configure time, then the `libgcj' build will create and install ecj1, and will also install the discovered ecj.jar into a suitable place in the install tree. If ecj1 is not installed, then the user will have to supply one on his path in order for gcj to properly parse .java source files. A suitable jar is available from ftp://sourceware.org/pub/java/. --------------------------------------------------------------------------- I suggest you grab ecj.jar and put it in install/share/java. That should get you a fully working gcj. > Issue #2: > As an aside, I ran the test suite and had six errors. Unfortunately, I > do not know if these errors are show-stoppers or not and would > appreciate anyone's opinion about whether they will block me from > running a gcj compiler. They details of the test suite are set forth in > Bug 42409. > > FAIL: calls execution - gij test > FAIL: findclass2 run > FAIL: Throw_2 execution - source compiled test > FAIL: Throw_2 -findirect-dispatch execution - source compiled test > FAIL: Throw_2 -O3 execution - source compiled test > FAIL: Throw_2 -O3 -findirect-dispatch execution - source compiled test > === libjava Summary === I don't know about calls and findclass2, but Throw_2 is known to fail on ARM. This is a bug in the ARM unwinder which is AFAIK impossible to fix. > Given then above test results coupled with the warning in the > documentation that some errors would occur, I'm thinking I've been > very successful. I think so. Bootstrapping the entire Java world from zero is a hard problem. Andrew.