一定要保证手册与版本对应!
一定要保证手册与版本对应!
一定要保证手册与版本对应!
(血的教训。。。)
虚拟机:Ubuntu 16.04.3-desktop-amd 64
开发版:AXU3CG
petalinux:2018.3
本人基于AXU3CG开发板做双目摄像的图形抓拍并存储到SD卡,在裸机上demo是OK的,现在需要做视频的压缩和存储到SSD卡,所以需要Linux操作系统。
按照教程,安装Ubuntu虚拟机,安装petalinux,定制Linux操作系统,然后生成BOOT和IMG文件,SD卡启动开发版。一切都很顺利的样子,然而,万物逃不过“前途是光明的,道路是曲折的”定律。
第一坎:petalinux按教程2018.3版本,安装在/opt/pkg/petalinux下,不成功。解决办法是安装新的版本,并新建安装路径,成功。两天时间过去了。
接下来,定制Linux系统OK的,将BOOT和IMG文件拷贝到SD卡,可以启动开发板。一天过去了。
第二坎:交叉编译./hello文件,拷贝到SD卡中,放到开发板:cd /run/media/mmclk1q1不能进入,解决办法是:一级一级的进入:cd /run OK的,cd /run/media OK的,ls一下有mmclk0q1文件,,找不到BOOT,IMG,.hello三个文件。找了大神检查一下没有解决。最后借鉴大佬的经验解决的,链接:https://jingyan.baidu.com/article/60ccbceb0cb34864cab197bb.html。开发板有一个7.6G的MMC,SD的是mmclk1q1,.hello可执行文件是OK的,说明交叉编译可以的。一天过去了。
第三坎:怎么将裸机上的demo,在Linux系统上复现一下呢?第一感觉肯定不能用gcc了,教程上提供基于qt交叉编译环境。说干就干,安装qt软件,顺利的,然后安装依赖库,问题来了,运行脚本失败,常规操作就是路径的问题,打开脚本,结果找不到相应的文件,这就尴尬了,没有文件怎么修改路径(技术支持说2019版里本来就没有……)。关键是虚拟机和petalink是实习同事安装的,我没有操作……当然是找他,然后打电话给技术支持,技术支持说的很对,第一,版本必须匹配不然会出现意想不到的错误,这个手册明确说明,第二,安装路径可以改,但是报错了要知道怎么修改,所以你的问题我也解决不了……一天过去了。
第四坎:换版本和安装路径的原因是安装不上,既然出问题了,但就按着手册走。2018.3版还是安装失败啊,继续电话:结果是重装虚拟机。然后继续报错,安装失败。技术支持说,安装失败最大原因是没有权限:chmod 777 -R加了啊,还有什么权限???最后的解决办法是:(两天过去了。)
cd ~/Downloads
sudo -s
mkdir -p /opt/pkg/petalinux
chgrp <your user name> /opt/pkg/petalinux
chown <your user name> /opt/pkg/petalinux
exit
虚拟机重装了,petalinux重装了,然后就是重新定制Linux系统……
漫长等待……
这个交叉环境太难了,内心OS:这还没搞开发呢,这搭环境就快实力却退了。
仅此记录这几天踩过的坑,没有截图因为在手机上,电脑上公司的,不能发送图片。
仅供参考