最近在hi3531D下台下做开发,想用nload查看下网络状态,说干就干,按网上的教程:
1:编译安装ncurses
wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz
tar -xzvf ncurses-6.0.tar.gz
cd ncurses-6.0
./configure --prefix=/opt/ncurses --host=arm-hisiv300-linux --with-normal --with-shared
make && make install
很顺利
2. 编译安装nload
wget http://www.roland-riegel.de/nload/nload-0.7.4.tar.gz
tar -xzvf nload-0.7.4.tar.gz
cd nload-0.7.4
./configure --host=arm-hisiv500-linux CXXFLAGS="-I/opt/ncurses/include/ncurses/ -I/opt/ncurses/include/" LDFLAGS="-L/opt/ncurses/lib/ -lncurses"
make
configure 那一步总是过不去,报错信息为ncurses库找不到。但是咱径没错,用arm-hisiv500-linux-gcc 手动编译文件,指定ncurses目录可以编译通。 查看config.log,明白原因了。 脚本在检测ncurses库的时候,引用ncurses库生成一个conftest的文件,然后去执行!!!! 注意,是执行,然后判断返回结果,arm-hisiv500的可执行文件怎么能在x86下运行!!!!!
编辑configure 文件,把下面几行注释:

在hi3531D开发中,通过ncurses编译nload以检查网络状态。遇到configure阶段ncurses库找不到的问题,通过手动指定ncurses路径解决编译错误。修改configure脚本,注释掉执行conftest的代码段,成功完成nload的交叉编译,最终在src目录下找到可执行文件。
最低0.47元/天 解锁文章
673

被折叠的 条评论
为什么被折叠?



