平台编译configure时报错,错误现象比较奇怪
checking for working htonl... yes
configure: creating ./config.status
config.status: creating Makefile
gawk: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory
config.status: error: could not create Makefile
/bin/bash ./config.status
config.status: creating Makefile
gawk: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory
config.status: error: could not create Makefile
make: *** [Makefile] Error 127
/bin/bash ./config.status
config.status: creating Makefile
gawk: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory
config.status: error: could not create Makefile
make: *** [Makefile] Error 127
查找工具链,libreadline.so.6也有,为什么找不到呢
huahuan@hhpfmsvr8:~/work/HT201$ sudo find/opt/arm/ -name libreadline.so.6
/opt/arm/usr/arm-broadcom-linux-gnueabi/sysroot/usr/lib/libreadline.so.6
自己写了个脚本编译没有这个错误 ,唯一的差别
#1:export PATH=$PATH:/opt/arm/usr/bin:/opt/arm/usr
#2:export PATH=/opt/arm/usr/bin:/opt/arm/usr:$PATH
#1 有问题,#2没问题
查找了一下$PATH指定的目录下,同样有一个libreadline.so.6
huahuan@hhpfmsvr8:~/work/HT201$ sudo find/lib -name libreadline.so.6
/lib/libreadline.so.6
怀疑环境变量中目录的顺序对于库的查找有影响,如果先找到了系统的库,交叉编译就会出错
理论上来说交叉编译工具链是可以通过自己的参数正确找到库的地址的
http://blog.csdn.net/davion_zhang/article/details/56678881
应该是软件包configure的bug吧