【发布时间】:2021-03-01 17:50:54
【问题描述】:
我是 linux 新手,我真的需要你的帮助
我正在研究结束实习的项目:控制传感器并在 LCD 屏幕上显示结果
为此,我将使用 raspberry 并创建一个 QT 应用程序来显示传感器的结果。
启动时间需要非常短,因此我想为我的 raspberri pi-4 b 创建一个最小内核
我为arm64做了交叉编译:
mkdir rasp_arm64
cd rasp_arm64/
git clone --depth=1 https://github.com/raspberrypi/linux
sudo apt-get install qemu-system-arm
sudo apt-get install lzop
sudo apt-get install gcc-aarch64-linux-gnu
cd linux/
make -j8 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- mrproper
make -j8 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- bcm2711_defconfig
make -j8 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image modules dtbs
这就是我所做的
我怎样才能为我的树莓派 4 的 bootalbe SD 卡创建一个 .img 文件?
我也参与过https://www.raspberrypi.org/documentation/linux/kernel/building.md
我补充说(cen 有人也澄清了我们为什么需要这个)
KERNEL=kernel8
然后我做了
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image modules dtbs
mkdir mntmkdir mnt/fat32
mkdir mnt/ext4
sudo mount /dev/sdb6 mnt/fat32
sudo mount /dev/sdb7 mnt/ext4
sudo env PATH=$PATH make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_MOD_PATH=mnt/ext4 modules_install
sudo cp mnt/fat32/$KERNEL.img mnt/fat32/$KERNEL-backup.img
我得到一个错误,告诉 mnt/fat32/.img 没有这样的文件或目录
我也试过了
$ sudo cp arch/arm64/boot/dts/overlays/*.dtb* mnt/fat32/overlays/
cp: target 'mnt/fat32/overlays/' is not a directory
所以我尝试创建它
$ mkdir mnt/fat32/overlays
mkdir: cannot create directory ‘mnt/fat32/overlays’: Permission denied
谁能帮帮我我在这个错误中卡住了 2 周,我需要构建我的内核才能开始处理它!
我也不知道这个版本的内核和这个配置是否最小。我可以用这种配置来缩短启动时间吗(我想改变启动顺序,一开始只启用我的应用程序所需的设备,但我当然不知道该怎么做)如果有人可以帮忙,请点亮我 !!即使你只是知道一个好的导师来推荐我什么的..
如果有人可以提供帮助,我将不胜感激
【问题讨论】:
标签: linux-kernel cross-compiling boot sd-card raspberry-pi4