编译内核出现以下错误:
[root@localhost 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: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /opt/FriendlyARM/toolschain/4.4.3/lib/libppl_c.so.2)
/opt/FriendlyARM/toolschain/4.4.3/libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /opt/FriendlyARM/toolschain/4.4.3/lib/libppl.so.7)
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
解决办法:
ls /usr/lib/libstdc++.so.6 -l
lrwxrwxrwx 1 root root 18 Mar 29 09:03 /usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.8libstdc++.so.6.0.这个库里面没有GLIBCXX_3.4.9下载新的库libstdc++.so.6.0.10
一般情况下可以去新版本的redhat enterprise 6.3里面/usr/lib/找到libstdc++.so.6.0.13 文件
下载后请先验证
strings /tmp/libstdc++.so.6|grep GLIBCXX
看是否有GLIBCXX_3.4.10如果没有则表示不是你要找的文件
rm libstdc++.so.6
mv /libstdc++.so.6.0.13 ./
ln -s /usr/lib/libstdc++.so.6.0.13 /usr/lib/libstdc++.so.6
但事实上不知道为啥libstdc++.so.6.0.13 不可以libstdc++.so.6.0.10就可以,不知道原因
需要libstdc++.so.6.0.10文件的可以到http://down.51cto.com/data/186826下载或者给我邮箱
来源:https://www.cnblogs.com/xmphoenix/archive/2012/07/09/2582328.html