[總結]給pcDuino v2編譯Linux kernel

一、版本問題

推薦選擇pcdunio提供的官方的kernel。php

固然能夠選用www.github.com/linux-sunxi 中的kernel,不過有不少驅動都用不了包括arduino。linux

我嘗試瞭如下的幾個版本,3.29,3.79,3.90,下面是我這些時間的總結,會慢慢更新。git

二、具體問題

(1)gen_initramfs_list.sh的問題

Cannot open '../../linux-sunxi/rootfs/rootfs.cpio.xz'github

make[1]: *** [usr/initramfs_data.cpio.xz] Error 1ui

make: *** [usr] Error 2debug

按照以下創建個文件夾結構,在roofs下面創建一個硬連接,連接到 linux-sunxi-sunxi-v3.4.29-r1/rootfs/sun4i_rootfs.cpio.gz。code

├── linux-sunxi-sunxi-v3.4.29-r1ci

└── rootfsit

    └── rootfs.cpio.xzio

 

(2)pcduino編譯內核啓動不了

pcduino啓動以後沒有反應,用uart對pcduino進行debug,發現一直卡死在kernel starting。

在編譯kernel打開CONFIG_DEBUG_LL選項,用uart進行debug能夠看到以下的信息:

<1>Unable to handle kernel paging request at virtual address 34797474

.......
<0>Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b

參考資料後,

將arm-gnueabihf-gcc的連接從arm-gnueabihf-gcc-4.8改爲arm-gnueabihf-gcc-4.7便可。

 

參考文獻:

[1]http://pcduino.com/forum/index.php?topic=3877.0

相關文章
相關標籤/搜索