Error compiling for java
David Daney
ddaney@avtrex.com
Thu Dec 14 07:55:00 GMT 2006
There is something wrong either with your libc or your cross-compiler
configuration commands, I am not sure which.
Your libc build should include all the necessary headers before you
start configuring and building the cross compiler. The fact that you
are adding files to it indicates that it is badly broken.
The compiler build process will not clobber the libc header files if
configured in a sane manner. Placing syscall.h in a place that is
touched be the GCC build process is almost certainly a bad idea. Note
that if you are not using --with-sysroot= to configure, GCC may make a
copy of the headers. But that does not change the need for all the
proper headers to exist in the libc include directory before you start.
You could try asking on crossgcc@sourceware.org as it appears that you
are using crosstool. Many of the crosstool developers read that list
and are generally fairly responsive to questions.
Goel, Mudit (Mudit) wrote:
> I inlcuded the syscall.h in the PREFIX path
> /opt/crosstool/gcc-4.1.0-glibc-2.3.5/powerpc-750-linux-gnu/powerpc-750-linux
> -gnu/include/bits.
> But I beleive this directory is newly created each time a new build is
> started.So whatever I included is overwritten.!!!!
> Is there a way around ?
> I also tried making syscall.h part of glibc-2.3.5.tar.bzip2 but then also no
> luck.
> Could some one help me on this.
>> Regards
> Mudit
>> -----Original Message-----
> From: Andrew Haley [mailto:aph@redhat.com]
> Sent: Wednesday, December 13, 2006 3:21 PM
> To: Goel, Mudit (Mudit)
> Cc: 'java@gcc.gnu.org'
> Subject: Re: Error compiling for java
>>> Goel, Mudit (Mudit) writes:
> > All,
> > I am trying to get a java cross compiler to be used with ppc750.
> > I am using dem0-ppc750.sh .This is a partial build output that I got.
> > Could someone help me fix this ?
> > the syscall.h is pressent in ./usr/include/bits/syscall.h and not in
> this
> > path. How can I go and change the path so that correct path is in place.
> >
> > In file included from ./include/java-signal.h:17,
> > from
> >
> /home/eplguser/Mudit/crosstool-0.42/build/powerpc-750-linux-gnu/gcc-4.1.0-gl
> > ibc-2.3.5/gcc-4.1.0/libjava/prims.cc:26:
> >
> /opt/crosstool/gcc-4.1.0-glibc-2.3.5/powerpc-750-linux-gnu/powerpc-750-linux
> > -gnu/include/sys/syscall.h:32:27: error: bits/syscall.h: No such file or
> > directory
> >
> /home/eplguser/Mudit/crosstool-0.42/build/powerpc-750-linux-gnu/gcc-4.1.0-gl
> > ibc-2.3.5/gcc-4.1.0/libjava/java/lang/Class.h: In member function
> > 'java::lang::Class* java::lang::Class::getComponentType()':
> >
> /home/eplguser/Mudit/crosstool-0.42/build/powerpc-750-linux-gnu/gcc-4.1.0-gl
> > ibc-2.3.5/gcc-4.1.0/libjava/java/lang/Class.h:354: warning: dereferencing
> > type-punned pointer will break strict-aliasing rules
> >
> /home/eplguser/Mudit/crosstool-0.42/build/powerpc-750-linux-gnu/gcc-4.1.0-gl
> > ibc-2.3.5/gcc-4.1.0/libjava/prims.cc: In function 'jint
> > _Jv_CreateJavaVM(JvVMInitArgs*)':
> >
> /home/eplguser/Mudit/crosstool-0.42/build/powerpc-750-linux-gnu/gcc-4.1.0-gl
> > ibc-2.3.5/gcc-4.1.0/libjava/prims.cc:1274: error: 'SYS_sigaction' was not
> > declared in this scope
> > make[5]: *** [prims.lo] Error 1
>> /usr/include/bits/syscall.h is part of the target's operating system.
> On my system it's in the glibc-headers package. You need to take a
> copy of the target's syscall.h and place it in the prefix along with
> the other target headers.
>> Andrew.
>
More information about the Java
mailing list