This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: GCCMain not found & test suite errors fatal?
- From: Andrew Haley <aph at redhat dot com>
- To: jlpoole at pon dot net
- Cc: java at gcc dot gnu dot org
- Date: Sun, 03 Jan 2010 18:31:21 +0000
- Subject: Re: GCCMain not found & test suite errors fatal?
- References: <4B3CDCA7.70808@pon.net> <4B40C5A7.5020903@redhat.com> <4B40DE6F.1010003@pon.net>
On 01/03/2010 06:14 PM, John Poole wrote:
> On 1/3/2010 8:28 AM, Andrew Haley wrote:
>>
>> I'd try stracing gcj to find out what's going on
>>
>> $ strace -f -etrace=file gcj -c HelloWorld.java
>>
>> This will tell you where gcj is looking for its jarfiles. Look for
>> something like this:
>>
>> ...
>> 547 execve("/home/aph/gcc/trunk/install/libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/ecj1", ["/home/aph/gcc/trunk/install/libe"..., "Hello.java", "-g1", "-fbootclasspath=./:/home/aph/gcc"..., "-g1", "-fsource=1.5", "-ftarget=1.5", "-fzip-dependency", "/tmp/ccXyDB9d.zip", "-fzip-target", "/tmp/ccipPqBc.jar"], [/* 42 vars */]) = 0
>> ...
>> 547 stat("/home/aph/gcc/trunk/install/share/java/ecj.jar", {st_mode=S_IFREG|0644, st_size=1377431, ...}) = 0
>> 547 open("/home/aph/gcc/trunk/install/share/java/ecj.jar", O_RDONLY) = 3
> Perfect.
>
> I followed your suggestion; installed strace and reran the revised
> command line. The output can be referenced at http://pastebin.com/m7cb292d5
>
> The definitive line is:
>
> 172. [pid 6423] access("/usr/local/share/java/ecj.jar", F_OK) = -1
> ENOENT (No such file or directory)
>
> See also lines 81,82 and 85.
>
> Basically, the problem is that compiler was looking for ecj.jar under a
> fixed(?) /usr/local/share path instead of the path where I had custom
> installed: /usr/local/gcj; moreover it should have been looking under
> the full path of /usr/local/gcj/usr/local/share/java.
OK, so we need to know why that happened. It might be a bug in gcj or
you might not have configured gcc correctly. My guess is the latter,
but you never know.
Please look at the config.log in the top of the gcc build directory,
and cut-n-paste the configure line that's there. I think I know
what's wrong, but I'll need to see it to be sure.
Andrew.