/usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/limits.h:168:61: fatal error: limits.h: No such file or directory
#include_next <limits.h> /* recurse down to the real one */
^
compilation terminated.
error: command 'gcc' failed with exit status 1
問題解決過程:
1)提示找不到linux/limits.h,即/usr/include/linux/路徑下沒有limits.h這個文件,想到可能是少了某個包,接下來的任務就是找到生成這個路徑下limits.h文件的包;
2)兩個需要掌握的命令:dpkg -l 打印出系統中安裝的所有包; dpkg -L 包名 打印出該包生成的所有文件及其路徑。
3)考慮到一般的頭文件都是由 “XXX-dev” 這樣名字的包生成的。於是首先用命令dpkg -l |grep "dev" 標出那些候選,就幾個;
4)然后將候選的幾個包,用dpkg -L 包名 | grep "linux/limits.h" 打印結果,有結果的即為正確的包。最后定位到包 “linux-libc-dev:amd64” ;
5)以為沒有這個包,於是直接安裝 apt-get install linux-libc-dev:amd64。但發現並沒有更新任何軟件包。意思是安裝了這個包,但是卻沒有在/usr/include/linux/路徑下生成應該生成的limits.h文件。於是考慮將linux-libc-dev:amd64卸載后再重新安裝。注意在卸載linux-libc-dev:amd64的時候還會卸載相關的幾個包(大概7個左右,具體忘記了)。等卸載完成后,apt-get install linux-libc-dev:amd64,安裝包,之后再將之前卸載的那幾個相關的包一一安裝上;
6)都安裝好后再 make menuconfig,成功!!!大功告成啦。。。。。。。
如果上述方法不行,
嘗試先更新一下源,
然后安裝
apt-get install gcc-multilib
備份/etc/apt/sources.list #備份 cp /etc/apt/sources.list /etc/apt/sources.list.bak 在/etc/apt/sources.list文件前面添加如下條目 #添加阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse 最后執行如下命令更新源 ##更新 sudo apt-get update sudo apt-get upgrade