在用ubuntu 16.04 64位机器编译openwrt 源码(之前在32位机器上编译过)make menuconfig 时,出现了如下的错误:


shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory



这个错误是因为64位与32位并不兼容,所以就算你已经安装了libncrurses5也可能出现这个错误。


解决方法及步骤如下:


1、确定有一个64位架构的内核
$ dpkg --print-architecture  
amd64
 
2、确认打开多架构支持功能
$ dpkg --print-foreign-architectures  
i386

如果不是i386的话,那么请打开多架构支持

步骤:
2.1)、$ sudo dpkg --add-architecture i386   
2.2)、$ sudo apt -get update  
 
3、检查拥有的库文件是否需要更新版本
$ sudo apt-get dist-upgrade  
 
4、执行下面语句安装:

$ sudo apt install lib32ncursesw5 lib32ncursesw5-dev  
 
5、此时再执行一次试试看,应该就可以了执行make menuconfig了。。