On Fri, 2011-09-30 at 21:53 +0200, Thomas De Schampheleire wrote:
> Hi,
> 
> I'm trying to compile xenomai-forge on powerpc, but am facing
> compilation problems:
> 
> libtool: compile:
> /repo/tdescham/reborn/buildroot-08-eglibc-test-toolchain/output/host/usr/bin/powerpc-linux-gcc
> -DHAVE_CONFIG_H -I. -I../../lib/include -O2 -D_GNU_SOURCE -D_REENTRANT
> -Wall -pipe -Wstrict-prototypes -Wmissing-prototypes -Wno-long-long
> -Wno-unused-parameter -Werror -D__XENO__ -D__IN_XENO__
> -Wstrict-prototypes -I../../include -pipe -Os -D_LARGEFILE_SOURCE
> -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -MT
> libcopperplate_la-cluster.lo -MD -MP -MF
> .deps/libcopperplate_la-cluster.Tpo -c cluster.c  -fPIC -DPIC -o
> .libs/libcopperplate_la-cluster.o
> cc1: warnings being treated as errors
> In file included from cluster.c:89:
> ../../include/copperplate/heapobj.h: In function 'mainheap_ptr':
> ../../include/copperplate/heapobj.h:82: error: cast to pointer from
> integer of different size
> ../../include/copperplate/heapobj.h: In function 'mainheap_off':
> ../../include/copperplate/heapobj.h:87: error: cast from pointer to
> integer of different size
> cc1: warnings being treated as errors
> 
> The C library we are using for this build is eglibc.
> 
> The offending code is:
> static inline void *mainheap_ptr(off_t off)
> {
>         return off ? (void *)__memptr(__pshared_heap, off) : NULL;
> }
> 
> static inline off_t mainheap_off(void *addr)
> {
>         return addr ? (off_t)__memoff(__pshared_heap, addr) : 0;
> }
> 
> Since glibc/eglibc has large file support, the size of off_t is 8
> bytes (I confirmed this from the preprocessor output).
> However, on this 32-bit powerpc platform, a void pointer is only 4
> bytes, hence the compiler error.
> 
> Is my assumption correct that you are developing xenomai-forge on a
> 64-bit platform?
> 

Both on ppc 32bit and x86_64, but my ppc toolchain does not enable large
file support.

> What is the proper solution here?

Use a specific memory offset type would be the best approach. I have
committed something along these lines to the repo.

> 
> Thanks,
> Thomas
> 
> _______________________________________________
> Xenomai-help mailing list
> [email protected]
> https://mail.gna.org/listinfo/xenomai-help

-- 
Philippe.



_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to