平臺編譯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吧