error to build Genode for Linux

Le Bao TRUONG lbtruong at ...80...
Wed Sep 7 16:37:21 CEST 2011


Hi Norman,

Thanks for your rapid response.

I'm sorry, I forgot to mention my distribution is Ubuntu 11.04.

with grep -r __NR_socketcall /usr/include , I see :

/usr/include/i386-linux-gnu/asm/unistd_32.h:#define __NR_socketcall		102

Regards,
TRUONG

Le mercredi 07 septembre 2011 à 16:27 +0200, Norman Feske a écrit :
> Hello Truong,
> 
> > When I tried the tutorial how to build Genode for Linux, I have an
> > error :
> > 
> > In file included
> > from /home/lbtruong/genode.11/base-linux/src/base/ipc/ipc.cc:21:
> > /home/lbtruong/genode.11/base-linux/src/platform/linux_syscalls.h: In
> > function ‘int lx_socketcall(int, long unsigned int*)’:
> > /home/lbtruong/genode.11/base-linux/src/platform/linux_syscalls.h:82:
> > erreur: ‘__NR_socketcall’ was not declared in this scope
> 
> Genode's syscall bindings for Linux include the host-system's Linux
> headers containing the syscall opcodes (the definitions are prefixed
> with SYS_). Those definitions are mapped to __NR_-prefixed defines in
> '/usr/include/bits/syscall.h'. According our you output, so far,
> everthing seems to be fine.
> 
> On 32-bit Ubuntu Linux, those names are then defined in
> '/usr/include/asm/unistd_32.h'. For some reason, this last step seems to
> go wrong on your Linux distribution.
> 
> Which Linux distribution are you using? Do you have the Linux kernel
> headers installed (I assume yes because the compiler does not complain
> about missing them)?
> 
> You could help to resolve the issue by posting result of a grep for
> '__NR_socketcall' in '/usr/include':
> 
>   grep -r __NR_socketcall /usr/include
> 
> If you see a line containing something like the following
> 
>   #define __NR_socketcall 102
> 
> Could you please tell us the name of the header file where is definition
> is found on your platform?
> 
> Thanks
> Norman
> 





More information about the users mailing list