一、更换软件源
sudo nano /etc/apt/sources.list
注释掉原来的软件源,用下面的软件源
deb http://mirrors.neusoft.edu.cn/raspbian/raspbian/ jessie main contrib non-free rpi deb-src jessie main contrib non-free rpi
二、升级内核
sudo apt-get update sudo apt-get upgrade sudo rpi-update
三、内核编译操作
查看当前内核的版本:
uname -r
显示我的版本是4.1.15+,所以下载对应的4.1.15的linux源码,然后解压:
cd /usr/src sudo git clone https://github.com/raspberrypi/linux.git
或者直接下载zip文件,拷到/usr/src目录下
sudo unzip linux-rpi-4.1.y.zip
然后确保gcc的版本是4.9,后边有用
gcc -v
建立内核模块库目录的链接:
sudo ln -s /usr/src/linux-rpi-4.1.y /lib/modules/`uname -r`/build cd /lib/modules/`uname -r`/build
make mrproper 可以看作更加强劲的make clean 命令,用来清除环境变量,即清除配置文件,一般编译内核前都要运行:
cd /lib/modules/`uname -r`/build sudo make mrproper
生成/proc/config.gz:
sudo modprobe configs
将当前正在使用的系统的内核配置生成内核配置信息:
sudo gzip -dc /proc/config.gz > .config
生成编译内核所需要的东西
sudo make modules_prepare
获取内核编译时生成的内核模块导出符号文件。因为不是从头编译内核,所以没有,但是编译内核模块需要这个:
sudo wget https://github.com/raspberrypi/firmware/raw/master/extra/Module.symvers
如果是raspberry pi2以上新产品则:
sudo wget https://github.com/raspberrypi/firmware/raw/master/extra/Module7.symvers
再重新命名
sudo mv Module7.symvers Module.symvers
至此内核编译所需要的配置就完成了,后面就可以编译驱动了
注意:本文归作者所有,未经作者允许,不得转载