我尝试了一段时间,在我的Gumstix Overo a Yocto distribution with Qt5 (5.10.1)
上安装。目标是在我的 Ubuntu 虚拟机上编写一个 Qt5 应用程序,然后像这样为我的 Gumstix Overo 使用 QtCreator 交叉编译它,并在其上运行该应用程序。
实际上I'm blocked with the bootable sd card
,因为当我尝试在Overo上启动系统时出现错误...
我使用Overo ironSTORM-Y COM和Tobi平台。
为了完成所有事情,我在带有虚拟盒子 5.1.34 的 Ubuntu 18.04 发行版上工作。
我原则上在那里遵循Gumstimix的支持,但有一些差异。
为了准备SD卡,我遵循Gumstix支持。
我得到了在那里格式化SD卡的脚本。我将其从虚拟机而不是主机复制到文本文件中,因为文本格式如"换行符 (("和"回车符 (\r("。
在脚本的开头,"!那里的"/":#! /bin/sh
.我把它改成这个#!/bin/sh
.
我像这样运行脚本:~$ sudo ./mk2partsd /dev/sdb
最后我有:Allocating group tables: done
Writing inode tables: done
Creating journal (16284 blocks): done
Writing superblock and filesystem accounting information: done
我下载了在那里启动 Yocto 内核所需的 3 个文件。
正如 Gumstix 支持中所述,我下载了MLO
、u-boot.img
和gumstix-qt5-dev-image-overo.tar.bz2
根文件系统".tar.bz2"。在我的主文件夹中,我创建了一个yocto文件夹来保存这3个文件~$ sudo mkdir YoctoMaster
。
现在我挂载"boot"和"rootfs"将这 3 个文件复制到 sd 卡中。所以首先我必须创建文件夹,然后挂载它。
-~$ sudo mkdir /media/boot
-~$ sudo mkdir /media/rootfs
-~$ sudo mount -t vfat /dev/sdb1 /media/boot
-~$ sudo mount -t ext4 /dev/sdb2 /media/rootfs
--> 我使用 ext4,如果没有,那将不起作用...
最后,我可以从yocto文件夹中复制3个文件。
-~/YoctoMaster$ sudo cp MLO /media/boot/MLO
-~/YoctoMaster$ sudo cp u-boot.img /media/boot/u-boot.img
-~/YoctoMaster$ sudo tar -xjvf gumstix-qt5-dev-image-overo.tar.bz2 -C /media/rootfs
-~/YoctoMaster$ sync
然后我卸载磁盘。
-~/YoctoMaster$ sudo umount /media/boot
-~/YoctoMaster$ sudo umount /media/rootfs
在这个阶段,我通常有一个可启动的SD卡,所以让我们尝试一下。
我用~$ sudo screen /dev/ttyUSB0 115200
运行串行阅读器.
我按"输入"以避免Overo上的系统启动启动并且"overo shell"显示为Overo #
。
现在我必须强制系统启动SD卡上的引导加载程序,而不是他的内部存储器。所以我这样做:
-Overo # nand erase 240000 20000
-Overo # reset
这次系统将从引导加载程序和 SD 卡上的内核映像开始。
正是在这个时候,我有错误
当内核启动时,我有这个错误:
NAND 读取:设备 0 偏移量0x280000,大小0x800000
8388608 字节读取:OK
引导命令
的图像格式错误:无法获取内核映像!
使用 DTS 从 nand 引导...
UBI:将 mtd1 附加到 ubi0
如果有人知道如何修复它,我真的需要帮助......
对不起,我的英语不好。
我终于找到了一个解决方案,并将其发布给其他人。
我做我以前做过的事情,但我改变了两件事。
我在虚拟机器Ubunt 16.04.4上进行了所有配置,包括下载,我使用这些文件(MLO,u-boot.img和.tar.bz2(。
我希望这会帮助某人。