libjava issues with arm-linux-gcj from arm-linux-gcc 3.3.2
Andrew Haley
aph@redhat.com
Fri Aug 19 09:14:00 GMT 2005
Nathan M writes:
> > Is there any reason you can't just ask for the source?
> I think the only thing I would need from CompuLab is the headers,
> right? (see below)
>
> > So I see, right. Well, I can see that gcc 3.3.2 was configured with
> >
> > ../configure --target=arm-linux --disable-shared
> > --with-headers=/home/gerg/new-wave.xscale/linux-2.4.x/include --with-gnu-as --with-gnu-ld
> > --enable-multilib
>
> > AFAICS there's nothing to stop you from downloading the source of gcc
> > 3.3.2, installing the headers from linux somewhere, and running
> > configure as above. That should beuild the lot.
>
> Ok, just to make sure I've got this right; I should follow this process, right:
>
> 1. Obtain:
> - a fresh copy of the universal gcc-3.3.2 source from gnu.org (which
> should include javalib)
> - the headers from CompuLab
> 2. Copy the headers from CompuLab to:
> /home/username/new-wave.xscale/linux-2.4.x/include
> 3. Untar/unzip and change into the gcc-3.3.2 source directory
> 4. ./configure --target=arm-linux --disable-shared
> --with-headers=/home/username/new-wave.xscale/linux-2.4.x/include
> --with-gnu-as --with-gnu-ld --enable-multilib
Don't run configure in the same dir as the sources. It generates a
horrible mess. You'll see that the configure example I gave was in a
different dir.
> And that should give me a new toolchain complete with java.lang
> compatible with arm-linux architecture? I assume the target board is
> missing all java libraries as well so I'll need to make sure any
> binaries I create with arm-linux-gcj are static, or otherwise put the
> libraries on the target board.
Sounds reasonable.
> In short I shouldn't need anything proprietary to arm-linux or
> CompuLab's board other than the headers, correct? The standard
> gcc-3.3.2 source should suffice, using the above process?
I have no idea. It all depends on whether CompuLab made any important
changes.
> > > Therefore my arm-linux-gcc 3.3.2 toolchain includes arm-linux-gcj
> > > in it's /bin section however there is no libjava binaries or source
> > > in the package. So somehow I still need to find and obtain a copy
> > > of libjava/java.lang compatible with Compulab's arm-linux, assuming
> > > such a package actually exists. Is libjava/java.lang typically
> > > platform specific?
> >
> > Yes.
>
> I assume you mean the compiled binaries are platform specific but the
> sources should be universal?
Right.
> Otherwise the above process would not work properly.
>
> Also, do I need worry about obtaining and cross compiling gnu
> classpath or anything related to that? Or is classpath included in
> the gcc source?
It's included.
Andrew.
More information about the Java
mailing list