Philippe Gerum wrote: > Jan Kiszka wrote: > >> Philippe Gerum wrote: >> >>> Jan Kiszka wrote: >>> >>> >>>> Philippe Gerum wrote: >>>> >>>> >>>>> Heikki Lindholm wrote: >>>>> >>>>> >>>>> >>>>>> Jan Kiszka kirjoitti: >>>>>> >>>>>> >>>>>> >>>>>>> Heikki Lindholm wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Jan Kiszka kirjoitti: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> I'm dumb x86 user who unfortunately just seem to have tumbled >>>>>>>>> in the >>>>>>>>> cross-compilation trap: I'm trying to generate i586 code on a >>>>>>>>> fancy >>>>>>>>> new >>>>>>>>> and fast x86_64 compilation host. I got the kernel compiled with >>>>>>>>> ARCH=i386, using only the pre-installed compiler (i.e. no >>>>>>>>> dedicated >>>>>>>>> cross tool chain), but I failed to compile xenomai against that >>>>>>>>> kernel >>>>>>>>> in the following. Which magic switch do I have to apply and where? >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> As dumb a guess: -m32 compiler switch? >>>>>>>> >>>>>>> >>>>>>> >>>>>>> Yes, I know, that would help. But where to feed this argument >>>>>>> into the >>>>>>> build system? >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> I would try makefile (and perhaps config/kconfig/Makefile*) and >>>>>> command line 'CC="gcc -m32" CXX="gcc -m32" make >>>>>> menuconfig/install' to >>>>>> be sure. >>>>>> >>>>> >>>>> You should be able to do that just by reconfiguring: >>>>> >>>>> cd build && make reconfig CC="gcc -m32" >>>>> >>>> >>>> >>>> ... would have been too easy: :-/ >>>> >>>> [after "make menuconfig ARCH=i386"] >>>> gcchost2:/tmp/xenomai/build # make reconfig CC="gcc -m32" >>>> make[1]: Entering directory `/tmp/xenomai/build' >>>> configure: error: unrecognized option: -m32 >>>> Try `/tmp/xenomai/configure --help' for more information. >>>> make[1]: *** [config.status] Error 1 >>>> make[1]: Leaving directory `/tmp/xenomai/build' >>>> make: *** [reconfig] Error 2 >>>> >>> >>> make reconfig CC="\"gcc -m32\"" >>> >> >> >> Quoting - I like it... >> >> Ok, one step further. Now I get on "make": >> >> [...] >> make[3]: Entering directory `/tmp/xenomai/build/arch/i386/hal' >> make: invalid option -- 3 >> make: invalid option -- 2 >> Usage: make [options] [target] ... >> Options: >> -b, -m Ignored for compatibility. >> [...] >> This program built for x86_64-unknown-linux-gnu >> Report bugs to <[EMAIL PROTECTED]> >> make[3]: *** [xeno_hal.ko] Error 2 >> make[3]: Leaving directory `/tmp/xenomai/build/arch/i386/hal' >> >> >>> (Ok, ok, we'll get rid of autoconf for kernel modules in 2.1...) >>> >> >> >> Might solve it. But meanwhile, isn't there a chance to do it as the >> kernel already does within autoconf/automake? >> > > Probably grabbing more stuff from the kernel cflags into XENO_ARCH_FLAGS > (e.g. -m[0-9]* to start with). Gilles, would this be ok? >
Please see my bug report: https://gna.org/bugs/index.php?func=detailitem&item_id=4546 The -m32 switch (and others) has a different origin. Have no clue how to fix this - that's a bit too much black magic for me. Jan
signature.asc
Description: OpenPGP digital signature