例如,i.MX 评估板可以作为在工厂中对 i.MX 板进行编程的简单解决方案。
i.MX 评估板不适用于工业用途,但您可以在网上找到大量便宜的 i.MX 工业板。
这里我使用 i.MX8QXP rev B0 MEK 板,并将对 i.MX6Q SABRE SD 板进行编程。
第一步是生成图像。按照文档步骤生成“验证”图像。
您将需要稍微定制一下 local.conf 文件(在 conf/local.conf 中)以包含 git、cmake、gcc 和其他缺失的包。
编辑 local.conf 并在文件末尾添加以下行:
IMAGE_INSTALL_append = " git cmake htop packagegroup-core-buildessential xz p7zip rsync"我已经在本地添加了 rsync 包,它可以替代 cp(复制),但使用 --progress 选项您可以看到复制进度。P7zip 取代了我们在 nxp.com 上提供的图像档案的解压缩,以解决大文件的问题。
然后重新烘焙你的图像:
bitbake -k fsl-image-validation-imx完成后,进入 tmp/deploy/image/
sudo ./uuu -b sd_all imx-boot-imx8qxpmek-sd.bin-flash fsl-image-validation-imx-imx8qxpmek.sdcard.bz2/*由于 rootfs 可能太小,因此可以使用 Linux 下的 gparted 来增加分区的大小。
放入 SD 卡并启动您的主板。
这里是肮脏的部分......
您可能知道 archlinux|ARM 网站( Arch Linux ARM ),那里有很多预编译的包。因此,您可以在板上下载它,并将文件复制到 /usr 文件夹中(例如,您可以使用它来获取最新的 openSSL!)。
将以太网电缆插入主板并检查其是否已启动:
ifconfig -a
ifconfig eth0 up现在您应该可以访问互联网了。
在 uuu 网页上,您可以找到所需的所有软件包(这里我使用的是 4.14.98_2.0.0 Linux):
mkdir missinglibs
cd missinglibs
wget http://mirror.archlinuxarm.org/aarch64/core/bzip2-1.0.8-2-aarch64.pkg.tar.xz
wget http://mirror.archlinuxarm.org/aarch64/core/nettle-3.5.1-1-aarch64.pkg.tar.xz
wget http://mirror.archlinuxarm.org/aarch64/core/libusb-1.0.22-1-aarch64.pkg.tar.xz
wget http://mirror.archlinuxarm.org/aarch64/extra/libzip-1.5.2-2-aarch64.pkg.tar.xz
wget http://mirror.archlinuxarm.org/aarch64/core/zlib-1:1.2.11-3-aarch64.pkg.tar.xz
wget http://mirror.archlinuxarm.org/aarch64/extra/p7zip-16.02-5-aarch64.pkg.tar.xz
cd ..等待所有档案下载完毕(否则您将在档案下载之前解压缩)因为 wget 正在后台运行!
现在解压档案并将其复制到 rootfs(脏)中:
tar -xJf libzip-1.5.2-2-aarch64.pkg.tar.xz
tar -xJf libusb-1.0.22-1-aarch64.pkg.tar.xz
tar -xJf nettle-3.5.1-1-aarch64.pkg.tar.xz
tar -xJf bzip2-1.0.8-2-aarch64.pkg.tar.xz
cp zlib-1:1.2.11-3-aarch64.pkg.tar.xz zlib
tar -xJf zlib
tar -xJf p7zip-16.02-5-aarch64.pkg.tar.xz
cd usr
sudo cp -R . /usr
cd ../../
下载并编译uuu:
git clone git://github.com/NXPmicro/mfgtools.git
cd mfgtools/
cmake .
make例如,在 nxp.com 上下载图像。
我已经下载了 i.MX6 4.14.98_2.0.0 图像并将其放在 USB 密钥上。
然后将其解压到uuu文件夹中:
7z e L4.14.98_2.0.0_ga_images_MX6QPDLSOLOX.zip正如之前提到的,unzip 无法处理大文件...所以像我一样使用 7z
将 i.MX6Q SABRE SD 插入 i.MX8X 并对 i.MX6 开发板进行编程:
./uuu uuu.auto-imx6qsabresd
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.3.74-0-g64eeca1
Success 1 Failure 0