Cross-compiling L4Re for MIPS32
Paul Boddie
paul at boddie.org.uk
Thu Jun 16 00:10:50 CEST 2016
On Wednesday 15. June 2016 23.30.47 Adam Lackorzynski wrote:
> On Tue Jun 14, 2016 at 00:42:11 +0200, Paul Boddie wrote:
> > On Tuesday 14. June 2016 00.16.35 Adam Lackorzynski wrote:
> > > On Mon Jun 13, 2016 at 12:50:07 +0200, Paul Boddie wrote:
> > > > I'm compiling in a Debian unstable chroot on i386. Are you still
> > > > using i386 to build with? Recent experiences with other projects
> > > > indicate that support for i386 sometimes falls behind amd64,
> > > > although I have no idea or immediate recollection why the unistd.h
> > > > behaviour changed as indicated above.
> > >
> > > Although amd64 is in the majority, i386 is still in the game, and I've
> > > never seen this before. Also, __NR_open is not used directly, thus my
> > > question, where is it missing?
> >
> > In src/l4/tool/gendep/syscall.c there is this include:
> >
> > #include <unistd.h>
> >
> > (There are actually two of them.) This header eventually includes the
> > following file:
> >
> > /usr/include/asm-generic/unistd.h
> >
> > This is provided by the following packages:
> >
> > linux-libc-dev:i386, linux-libc-dev:mipsel
> >
> > In the file in question, I see the following...
> >
> > /*
> >
> > * All syscalls below here should go away really,
> > * these are provided for both review and as a porting
> > * help for the C library version.
> > *
> > * Last chance: are any of these important enough to
> > * enable by default?
> > */
> >
> > #ifdef __ARCH_WANT_SYSCALL_NO_AT
> > #define __NR_open 1024
> > __SYSCALL(__NR_open, sys_open)
> >
> > Now, I imagine that the "at-less" syscalls are deprecated (according to
> > some definition of the word, maybe only for the Linux people), but
> > perhaps this decision isn't exposed in other distributions. But I really
> > don't know why this is a problem only for me.
>
> Please show the error messages you are seeing.
make O=mybuild config
scripts/kconfig/mconf /home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/Kconfig.generated
*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.
scripts/kconfig/conf --silentoldconfig /home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/Kconfig.generated
All build tools checked ok.
gcc -fPIC -Wall -pedantic -g -m32 -c /home/paulb/L4-for-
MIPS/l4re.org/src/l4/tool/gendep/syscall.c -o /home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/tool/gendep/syscall.32.o
mkdir -p /home/paulb/L4-for-MIPS/l4re.org/src/l4/mybuild/tool/gendep/32
gcc -m32 -shared -Wl,--no-as-needed -Wl,-soname,/home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/tool/gendep/32/libgendep.so -ldl -o
/home/paulb/L4-for-MIPS/l4re.org/src/l4/mybuild/tool/gendep/32/libgendep.so
/home/paulb/L4-for-MIPS/l4re.org/src/l4/mybuild/tool/gendep/deptrack.32.o
/home/paulb/L4-for-MIPS/l4re.org/src/l4/mybuild/tool/gendep/syscall.32.o
gcc -fPIC -Wall -pedantic -g -m64 -c /home/paulb/L4-for-
MIPS/l4re.org/src/l4/tool/gendep/syscall.c -o /home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/tool/gendep/syscall.64.o
In file included from /usr/include/sys/syscall.h:31:0,
from /home/paulb/L4-for-
MIPS/l4re.org/src/l4/tool/gendep/syscall.c:21:
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c: In function
'real_open':
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c:52:19: error:
'__NR_open' undeclared (first use in this function)
return (syscall(SYS_open, (fn), (flags), (mode)));
^
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c:52:19: note:
each undeclared identifier is reported only once for each function it appears
in
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c: In function
'real_unlink':
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c:172:18: error:
'__NR_unlink' undeclared (first use in this function)
return syscall(SYS_unlink, (fn));
^
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c: In function
'real_open':
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c:53:1: warning:
control reaches end of non-void function [-Wreturn-type]
}
^
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c: In function
'real_unlink':
/home/paulb/L4-for-MIPS/l4re.org/src/l4/tool/gendep/syscall.c:173:1: warning:
control reaches end of non-void function [-Wreturn-type]
}
^
Makefile:48: recipe for target '/home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/tool/gendep/syscall.64.o' failed
make[4]: *** [/home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/tool/gendep/syscall.64.o] Error 1
Makefile:404: recipe for target 'libgendep' failed
make[3]: *** [libgendep] Error 2
Makefile:232: recipe for target 'DROPSCONF_CONFIG_MK_POST_HOOK' failed
make[2]: *** [DROPSCONF_CONFIG_MK_POST_HOOK] Error 2
mk/config.inc:122: recipe for target '/home/paulb/L4-for-
MIPS/l4re.org/src/l4/mybuild/.config.all' failed
make[1]: *** [/home/paulb/L4-for-MIPS/l4re.org/src/l4/mybuild/.config.all]
Error 2
mk/config.inc:89: recipe for target 'config' failed
make: *** [config] Error 2
More information about the l4-hackers
mailing list