从零开始搭建DM368开发环境

从零开始搭建DM368开发环境 mini菜 2023-06-19 11:11:26 615

文章目录

前言

本文全文基础参考:DM365 dvsdk_4_02_00_06开发环境搭建

应原作者要求的声明:

本文源自蓝海@博客站:http://kevinxie.blog.51cto.com,原创作品,转载请保留本声明,以示对作者劳动的尊重。

上述的博文非常详细的介绍了DVSDK的安装过程,为什么我还要再重新排版一次呢?这不禁让我发自内心的想说一句: 大人,时代变了

截止到我写这个博文,已经0202年了,前几日看到Ubuntu社区都要推出Ubuntu20.04了,然而DVSDK依赖的环境却是Ubuntu10.04,我抱着试试看的态度在Ubuntu18.04的系统上运行安装程序,得到不能安装的提示;不甘心的我查找官网发现即便是最新的DVSDK4_03也是在Ubuntu10.04上运行的。

QWQ,我能怎么办呢?时代在发展,但是需求却是一直在徘徊。既然规定了使用DM368,那就用之。但是在按照原博文安装的过程中却遇到了一些问题,因为Ubuntu10.04实在是太老了,甚至被划归到old release版本中了。所以一些东西和方法需要做修改,这些内容网上都能查到,此处列出,emmm,希望能方便以后用得上的人吧。

本文配置说明
Windows环境Windows 10, 64-bit (Build 19041) 10.0.19041
虚拟机平台VMware® Workstation 15 Pro 15.5.1 build-15018445
Ubuntu版本Ubuntu10.04 32-bit LTS
DVSDK版本DVSDK4\_02\_00\_06
#一、Ubuntu10.04的安装 ###1.VMWare15的安装 这个安装过程很简单,网上教程也很多,安装时也没有什么困难,所以直接上安装包。 **\[VMware Workstation Pro 15\]** **百度网盘连接:** [https://pan.baidu.com/s/1D\_0rI8WEyyQEmYrtaK\_ttw](https://pan.baidu.com/s/1D_0rI8WEyyQEmYrtaK_ttw) **提取码:** w7nm ###2.Ubuntu10.04的镜像获取 首先,Ubuntu10.04 LTS的下载源为: 进去之后别看花了眼,按照官网的要求,我们只需要 **Ubuntu 10.04.4 LTS (Lucid Lynx)** 这个版本的镜像。在VMWare中安装操作系统就不多说了,也没有什么问题,甚至因为Ubuntu10.04比较小,安装的速度还会更快一些。 ###3.Ubuntu10.04中需要做的修改 在安装了系统之后先别急,把系统调好了再说。有以下几步需要安排一下: ###更改apt-get源 将/etc/apt/sources.list中的内容全部删除替换为: ``` deb http://old-releases.ubuntu.com/ubuntu/ lucid main restricted deb-src http://old-releases.ubuntu.com/ubuntu/ lucid main restricted ``` ——>[参考来源](https://blog.csdn.net/qq_41191281/article/details/82221585) 比较方便的改法是先建立一个sources.list文件,输入上面的内容保存之后,使用cp替换原文件: ``` sudo cp sources.list /etc/apt/ ``` 文件的修改可以使用系统中自带的编辑器,别纠结在不好用的vi上。 ###更新apt-get Ubuntu10.04中没有apt命令,只好麻烦自己多输入几个字符咯: ``` sudo apt-get update sudo apt-get upgrade ``` 这样就可以使用apt-get工具安装应用了。 ###安装vim aot-get工具可用后,为了以后方便,建议安装vim: ``` sudo apt-get install vim ``` 至此,对Ubuntu10.04的配置就算完成了。 #二、安装交叉编译工具链arm-none-linux-gnueabi-gcc DVSDK使用的交叉编译工具链是arm-none-linux-gnueabi-gcc,而且必须在安装的时候指定好工具链的安装位置,这是因为很多配置文件的内容在安装的时候就固定了的缘故。在安装后再手工修改工具链的路径不现实。所以一开始就要装好工具链。 ###工具链的下载 各版本下载地址: 其中版本众多,我只爱一个:arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 ###工具链的安装 在下载之后,将其拷贝到/usr/local目录下: ``` sudo cp arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 /usr/local/ ``` 这里顺带说一嘴,VMWare和虚拟机之间的文件交换可以不使用VMWare Tools,在设置中挂载共享文件夹即可。 切换到目标目录 ``` cd /usr/local ``` 在当前目录下解压 ``` sudo tar -jxvf arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 ``` 增加PATH变量:打开配置文件 ``` sudo vim /etc/bash.bashrc ``` 在末尾添加 ``` export PATH=$PATH:/usr/local/arm-2009q1/bin/ ``` \*执行(之所以标星是因为这步也可以不执行,重启即可) ``` source /etc/bash.bashrc ``` 至此,在Terminal中输入arm-并按两次TAB之后应该可以看到如下提示: ![工具链安装验证](https://ebaina.oss-cn-hangzhou.aliyuncs.com/res/article/202306/12/6486bf657a01f26638.png) #三、安装DVSDK4\_02\_00\_06 ###1.安装包的获取 [http://software-dl.ti.com/dsps/dsps\_public\_sw/sdo\_sb/targetcontent/dvsdk/DVSDK\_4\_00/4\_02\_00\_06/index\_FDS.html](http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/DVSDK_4_00/4_02_00_06/index_FDS.html) ###2.安装流程 首先安装fakeroot: ``` sudo apt-get install fakeroot ``` 然后安装autoconf automake: ``` sudo apt-get install autoconf automake ``` 实际上只输入一个也是可以的,例如:sudo apt-get install autoconf,此时automake会被自动安装。 然后在DVSDK安装程序所在目录下执行SDK安装: ``` ./dvsdk_dm365-evm_4_02_00_06_setuplinux ``` 安装过程中应手动指定交叉编译工具(arm-none-linux-gnueabi-gcc)的安装目录以及SDK目标安装目录,toolchain详细到 **/XXX/arm-2009q1/bin** 。 此时基本的安装已经搞定,可以在安装目录下执行make以编译所有项目,编译过程不会出错。 #四、编译u-boot和Kernel ###1.编译uboot 在DVSDK安装目录下执行: ``` make u-boot ``` 如果已经执行过make,那么uboot是已经编译好的了,编译得到的u-boot.bin在uboot文件夹内。 ###2.获取mkimage工具 进入 **./psp/uboot文件夹/tools/** ,将其中的mkimage拷贝到toolchain的安装目录下bin文件夹内: ``` sudo cp mkimage /usr/local/arm-2009q1/bin/ ``` mkimage是生成kernel的uImage需要使用的工具,本来在Ubuntu18.04下可以使用sudo apt install u-boot-tools得到的,但是很可惜,Ubuntu10.04中不能使用这个方法,甚至原来的mkimage源也失效了。所以使用上面的方法是最简单的了。 而拷贝到toolchain安装目录下的原因是,这个目录已经添加在了系统环境变量中,使用相应命令时系统能找得到。要是愿意,放在其它位置也行,把那个位置添加到PATH就成了。 ###3.编译Kernel 在DVSDK目录下输入: ``` make linux ``` 生成的uImage在 **./psp/linux文件夹/arch/arm/boot/** 内。 #五、制作根文件系统 ###1.创建根文件系统目录 在home下新建文件夹targetfs,将DVSDK安装目录下 **./filesystem/** 中较大的包解压到该文件夹: ``` sudo tar -zxvf dvsdk-dm365-evm-rootfs.tar.gz -C ~/targetfs ``` 修改文件系统的用户和组为普通用户 ``` sudo chown username:username ~/targetfs -R ``` 编辑DVSDK安装目录下的Rules.make文件,把最后一行改成: ``` EXEC_DIR=$(HOME)/targetfs ``` 在DVSDK文件夹下执行 ``` make install ``` ###2.安装mkfs.jffs2 在Ubuntu18.04中,下面的命令就行了: ``` sudo apt-get install mtd-utils ``` 但是在Ubuntu10.04中有可能是执行失败的,那么需要这样安装: **(注意,以下操作只为了得到mkfs.jffs2)** 首先安装 ``` sudo apt-get install zlib1g-dev liblzo2-dev ``` 然后在下面这个地址中下载1.5.2版本的mtd-utils: 之所以是这个版本是因为最新版和1.5.0我都没有编译出来…可能是我太菜了吧。 tar jxf解压之后进入其中进行编译: ``` make WITHOUT_XATTR=1 ``` 参考[mtd-utils交叉编译](https://blog.csdn.net/mociml/article/details/6134988)中的内容,指定WITHOUT\_XATTR=1 是由于在编译 mkfs.jffs2使其不调用acl.h而是用zlib的库. **后续编译会报错,但是不用管,在目录下我们得到了mkfs.jffs2可执行文件了。** 最后拷贝该文件到toolchain目录下: ``` sudo cp mkfs.jffs2 /usr/local/arm-2009q1/bin/ ``` 最后,在tergetfs上层目录执行: ``` mkfs.jffs2 -r /home/wind/targetfs/ -o /home/wind/dm368_basefs.bin -e 0x20000 -s 0x800 -n ``` 即可得到根文件系统的二进制文件。 #六、后记 实际上,安装了DVSDK之后还有很多路要走,比如如何对不同的硬件做适配,比如读懂它的例程QWQ。 不过有一句话说得好,万事开头难,困难总是有的,干就完了。
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
mini菜
红包 点赞 收藏 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
mini菜
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区