在任何地方都有针对BeagleBone Black平台的可靠的Linux内核构建吗?我遵循了here以及其他许多地方的指示,但这些指示均无效。要么模块无法构建(.ko文件只是无法构建,在上面的链接中无法找到),或者内核缺少构建目标。我正在使用Linaro ARM编译器(arm-linux-gnueabihf-gcc)在32位x86 Ubuntu 14.04上进行交叉编译。
具体来说,我已经在BeagleBone Git repository,分支3.8、3.11、3.12、3.13和3.14处检查了源代码。我还检查了第3方git clone here。我遇到的问题如下:
在我可以编译内核的情况下,我使用U-Boot的TFTP引导服务器将其复制到内存中的新的原始板上,然后在内存中引导内核。但是,没有一个成功编译的内核可以正常工作,因为它们缺少其模块/固件/dtb。是什么引起了不正确的修补?当然,编写代码和补丁的开发人员必须已经对其进行了测试,所以我的工作区可能出了点问题,尽管我现在无法想象。我使用的命令与链接1中的命令相同。
最佳答案
我也遵循了您提到的链接,并且能够启动BBB。我正在使用https://www.kernel.org/的mainline内核。以下是我遵循的步骤
使ARCH = arm CROSS_COMPILE = arm-linux-gnueabi- omap2plus_defconfig -j4
使ARCH = arm CROSS_COMPILE = arm-linux-gnueabi- uImage dtbs LOADADDR = 0x80008000 -j4。
产生的图像存在于以下路径中。
arch/arm/boot/uImage uImage
arch/arm/boot/dts/am335x-boneblack.dtb
使ARCH = arm CROSS_COMPILE = arm-linux-gnueabi-模块-j4
使用的编译器是arm-linux-gnueabi-gcc。这样,我就可以成功启动并运行模块。它的优点是我们正在使用最新的可用内核。
关于linux-kernel - 可靠地为BeagleBone Black构建Linux内核,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23766354/