Until this message everything works quite well. The last lines before the error message look like the output of make oldconfig. Here is some copy and paste: Compile the kernel with frame pointers (FRAME_POINTER) [N/y/?] n Use 4Kb for kernel stacks instead of 8Kb (4KSTACKS) [N/y/?] (NEW) * * Security options * Enable different security models (SECURITY) [N/y/?] n * * Cryptographic options * Cryptographic API (CRYPTO) [N/y/?] n * * Library routines * CRC32 functions (CRC32) [Y/?] y CRC32c (Castagnoli, et al) Cyclic Redundancy-Check (LIBCRC32C) [N/m/y/?] (NEW) make: *** No rule to make target `symlinks'. Stop. * InstallKernelHeaders(): Failed to create include/linux/version.h! The script says some lines up it takes the default i368 config, so i guess it has nothing to do with my .config which actually is for i386. Reproducible: Always Steps to Reproduce: 1. crossdev --arch=i686 -u 2. wait ... 3. see error! Actual Results: this error occured: * InstallKernelHeaders(): Failed to create include/linux/version.h! Expected Results: finish the script. I try to build a crosscompile environment on my athlon64 to help my desktop machine compile some updates for my pIII 900 laptop which is actually i686 using distcc. I read in the forums that this crossdev script is the right thing for my.
Stupid me: my kernel .config is for amd64 and not for i386... just a typo.
NO blocker !
crossdev is kumba's toy, so let him cope with this one :-)
What kernel headers were you trying to use?, and is your host an amd64 machine?
This is what the script says at the beginning. Hope this answers all your questions. The machine i try to run the crossdev script on is an amd64. I wan't to use it to help my slower p3 900 laptop to compile using distccd. logon root # crossdev --arch=i686 -u * crossdev.sh v0.4 - Cross-Toolchain Generator * Host Architecture: x86_64-unknown-linux-gnu * Host CFLAGS: -O2 -pipe * Target Architecture: i686-pc-linux-gnu * Target CFLAGS: -march=i686 -O2 -pipe * Install Path: /home/crossdev/i686 * Using unstable packages... On * Enabling extra gcc langs... Off * Using Portage CFLAGS... Off * Using Portage Sandbox... On * Building Kernel Compiler... Off * Cleaning build dir... Off * Pretending... No * The following packages in /usr/portage will be used: sys-kernel/linux-headers-2.6.6-r1 sys-devel/binutils-2.14.90.0.8-r1 sys-devel/gcc-3.3.3-r6 sys-libs/glibc-2.3.3.20040420 * Cross-compile will begin in 5 seconds... * (Ctrl-C to Abort) * >>> 5 4 3 2 1
There's a patch assigned to me to fix crossdev up for 2.6 headers support. Did you add that patch to your local copy by chance, because 0.4-r1 put-of-the-box can't handle 2.6 headers?
I did not apply any patch by hand. Actually i don't know where to find that patch and maybe don't even know how to apply it. If you provide me with the patch i would be willing to test it. Maybe some information on howto apply the patch would be great too, because i am not really a developer at all.
<=crossdev-0.4 is no longer supported ... please upgrade to crossdev-0.9 and if you're still having problems, re-open the bug and re-assign to toolchain@gentoo.org