Hi, I am using mini2440 1GB Nand board. While I am cross compiling the kernel I get the following error. ayyappan-muthu@ayyappanmuthu-Inspiron-5559:/DATA/linux-2.6.32.2$ make zImage CHK include/linux/version.h make[1]: `include/asm-arm/mach-types.h' is up to date. CHK include/linux/utsrelease.h SYMLINK include/asm -> include/asm-arm CC kernel/bounds.s /opt/FriendlyARM/toolschain/4.4.3/libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory make[1]: *** [kernel/bounds.s] Error 1 make: *** [prepare0] Error 2 I am using 14.04 ubuntu OS. I have already installed equivalent of ia32-libs as ia32-libs showed as obsolete. libstdc++6 was already installed. For ur confirmation when I execute the following command I get output as follows: ayyappan-muthu@ayyappanmuthu-Inspiron-5559:/DATA/linux-2.6.32.2$ sudo apt-get install libstdc++6 Reading package lists... Done Building dependency tree Reading state information... Done libstdc++6 is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 101 not upgraded. ayyappan-muthu@ayyappanmuthu-Inspiron-5559:/DATA/linux-2.6.32.2$ Please help to what I have to do.
Error when cross compiling mini2440 kernel
Additional information when I execute file /sbin/init I get following output. ayyappan-muthu@ayyappanmuthu-Inspiron-5559:/DATA/linux-2.6.32.2$ file /sbin/init /sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=7a4c688d009fc1f06ffc692f5f42ab09e68582b2, stripped ayyappan-muthu@ayyappanmuthu-Inspiron-5559:/DATA/linux-2.6.32.2$
Doesn't look like your file is being cross-compiled for the mini2440. Do a: readelf -A <your_cross-compiled_file_on_the_host> Also 4.4.3 is a new toolchain used for NanoPi development. I think you will have problems using a much newer toolchain with an old kernel. Check what toolchain was used with the mini2440. I think it was 4.3.2
No davef. This was the same toolchain I used in my old PC for mini2440.In my new laptop it is not cross compiling. I dont understand how I can do readelf -A elffile as cross compilation failed at starting itself.
Take any file that you intended to cross-compile to run on the mini2440, ie /sbin/init and change directories on the host to where you think your cross-compiled files are, ie /sbin do a ls to check that init is there and type readelf -A init If this doesn't work then go to your cross-compiled /bin directory and do the same on one of the files in there.