Ubuntu上交叉编译Broadcom SDK6/SDK7 ARM的一个Bug及其解决
出错提示为:
/opt/brcm-arm/bin/../libexec/gcc/arm-brcm-linux-uclibcgnueabi/4.5.3/cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory
执行如下命令:
ldd /opt/brcm-arm/libexec/gcc/arm-brcm-linux-uclibcgnueabi/4.5.3/cc1
发现有库没有找到
解决办法,在编译前执行:
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/brcm-arm/lib:usr/local/lib:usr/lib
再用上面的命令检查依赖库,结果没有依赖库找到了:
可以成功地编译程序了
不能运行是因为用arm工具链编译的,无法在x86平台上运行。
参考自:https://medium.com/quakemachinex/ubuntu-%E4%B8%8A%E4%BA%A4%E5%8F%89%E7%BC%96%E8%AF%91-tomato-shibby-arm-%E7%9A%84%E4%B8%80%E4%B8%AA-bug-%E5%8F%8A%E5%85%B6%E8%A7%A3%E5%86%B3-4b6a937b781b