编译Beaglebone黑色的内核

时间:2014-10-28 06:13:36

标签: android linux-kernel kernel beagleboard beagleboneblack

我按照程序为beaglebone black编译内核 git clone git://github.com/beagleboard/kernel.git

cd kernel
git checkout 3.8
./patch.sh
cp configs/beaglebone kernel/arch/arm/configs/beaglebone_defconfig
wget http://arago-project.org/git/projects/?p=am33x-cm3.git\;a=blob_plain\;f=bin/am335x-pm-firmware.bin\;hb=HEAD -O kernel/firmware/am335x-pm-firmware.bin
cd kernel
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- beaglebone_defconfig -j4
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage dtbs LOADADDR=0x80008000 -j4
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage-dtb.am335x-boneblack LOADADDR=0x80008000 -j4

当我尝试编译这一步时:

$make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage-dtb.am335x-boneblack LOADADDR=0x80008000 -j4,我收到以下错误:

make:***没有规则来制作目标`uImage-dtb.am335x-boneblack'。停止。

没有这个uImage-dtb.am335x-boneblack文件我无法从主板启动图像

如果有人遇到此类问题,请帮助解决此问题

2 个答案:

答案 0 :(得分:2)

检查" patch.sh"的结果。脚本。 patch.sh脚本可能因为您没有git user.email配置集而失败。这是我收到的错误:

Switched to a new branch 'tmp-patching-branch-sha'
v3.8.13
/home/tkawamura/Development/kernel/patches/dma/0001-Without-MACH_-option-Early-printk-DEBUG_LL.patch:
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'tkawamura@kawamura-ubuntu.(none)')
You need to set your committer info first

我能够设置我的user.email并重新运行patch.sh。完成后,我的uImage-dtb.am335x-boneblack编译成功。

希望有所帮助!

答案 1 :(得分:0)

而不是使用

    $make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage-dtb.am335x-boneblack LOADADDR=0x80008000 -j4 

将其更改为

    $make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage am335x-boneblack.dtb LOADADDR=0x80008000 -j4

它将被编译