Hi3518开发板开发总结

0. 前言

其实还挺忙的,但是这篇文章总结的内容我大概弄了两天,所以还是要总结一下,感觉都比较琐碎,但是免得下次又要重新做一部分的工作浪费精力。

一般网上大部分的教程可能都是教用一台Windows的电脑做客户机,一台Linux的虚拟机,然后连上板子。我直接把Windows的那台机省了,因为我本身也不太习惯用windows做开发环境,使用windows的教程主要是因为可以用ScureCRT这个工具,而Linux上有类似的工具,就是minicom,都是串口工具,下文会提到。

1. 搭建开发环境

1.1 搭载NFS服务器

不知道什么是NFS服务器?请自行百科吧,百科如果都看不懂,那估计还是那句老话,估计后面的你也不用看了,可以在底下点个赞然后关闭网页了谢谢。

一般嵌入式的开发都会用到这个东西,因为板子的环境比较封闭,资源比较有限,很难在板上直接开发和调试,所以会使用另一台配置好开发环境的电脑做开发,然后把开发好的文件拷贝到挂载的文件夹中,挂载的文件夹其实就是板子的文件夹共享了。

Ubuntu下使用如下命令安装NFS服务器

sudo apt-get install nfs-kernel-server #root用户可以不用sudo

然后需要配置一下:

vim /etc/exports #NFS最主要的配置文件

#在最下面加上一行
/home/luoyun/nfs *(rw,sync,no_root_squash,no_subtree_check)
#星号签名的文件夹是用来挂载的文件夹,*星号表示同一网段内的所有客户端可以访问。

1.2 设置板子IP

因为需要挂载,所以每个客户端都需要有IP,这时候我们把网线插上板子,你会发现对应的IP是不会自动分配的,所以要自己手动设置。设置方法如下:

ifconfig eth0 192.168.1.120 #IP根据你的实际内网段填写即可。

1.3 使用minicom登陆板子

minicom也是需要安装的,直接sudo apt-get install minicom就好,然后运行sodu minicom -s进行配置,我们的板子是用USB口连到电脑上的,所以对应的串口一般会是ttyUSB0,如果你的USB还有其他设备,那么可能会是ttyUSB1之类的。然后设置波特率115200,8,1,无流控。

上一点说道的手动设置IP也是要在通过minicom登陆板子后在板子串口上设置的。

1.4 挂载共享文件夹

继续呆在板子串口里,然后设置挂载文件夹:

mount -t nfs -o nolock 192.168.1.101:/home/luoyun/nfs /opt #假设开发机的IP是192.168.1.101

意思就是把板子的/opt文件夹挂载到开发机的nfs文件夹上。

1.5 unpack SDK

假设你已经有了海思的SDK,如果没有的话,那就自己找找呗。文件比较大,我也不方便上传。

执行./sdk.unpack,主要执行权限。

为了后续编译不出低级问题,如果开发系统是Ubuntu的话,建议修改默认dash为bash, 命令行执行sudo dpkg-reconfigure dash,然后选择no即可。

1.6 编译osdrv

编译osdrv主要会出现几个问题,需要一一对应处理:

1. “arm-hisiv100nptl-linux-gcc:command not found”,出现这个问题主要还没有安装海思的编译器和设置环境变量的问题,最好切换到root用户,然后执行osdrv/toolchain里面的cross.instal, 然后再执行source /etc/profile确认环境变量。理论上如果不用root用户操作,可以把/etc/profile中最后一行$PATH的命令复制到命令行执行一遍就可以,不过好像当前情况下一直不成功。

2. 解决了第一个问题之后,很可能会出现第二个问题: ”mkimage:command not found",一开始知道了这个命令ubuntu是不自带的之后,别人发了个mkimage的执行文件给我,我直接拷贝到系统中用,结果我设置好权限之后还是用不了,然后果断放弃,直接安装这个命令,安装方法 sudo apt-get install u-boot-tools.

然后就编译通过了。

2. 移植支持视频传输的PJSIP

2.1 设置环境变量

如果1.6第一个问题中你用了root操作,并且乖乖的安装了编译器,那么估计是不需要用到在命令行执行$PATH的,但是在这一步,这个工作还确实是省不了了。因为如果不把这个执行了,环境变量没有设置好,无法编译其他文件的。

2.2 移植编译FFMPEG

FFMPEG是PJSIP能支持视频传输或者通话的最重要的依赖库,所以要编译了这个,然后再编译PJSIP才可以有视频的功能。

一定要记住的是编译任何依赖库都要是用arm或海思的编译器编译,才能给后续的程序使用,最后给板子使用,不然只是在电脑编译了是没有用的。

编译命令参考:

./configure --enable-cross-compile --arch=arm --target-os=linux --enable-static --disable-shared --cc=arm-hisiv100nptl-linux-gcc --enable-libx264 --enable-gpl --disable-network  --enable-pthreads --enable-small --disable-parsers --disable-debug

如果有需要,可以先编译一下x264,如果没有编译x264,那--enable-libx264也可以删掉。

如果提醒有strip相关的问题,可以用--disable-stripping不使用strip去掉库信息。

2.3 移植编译PJSIP

最后一步,其实不难,先执行如下命令

./configure --with-ffmpeg=/usr/local/lib --host=arm-hisiv100nptl-linux-

然后修改pjproject2-4/pjmedia/include/pjmedia的config.h, 把#define PJMEDIA_HAS_VIDEO 和#define PJMEDIA_HAS_FFMPEG的0改成1.

保守一点的话,还可以在pjlib/pj/include/config_site.h中写入#define PJMEDIA_HAS_VIDEO 1(官网上的标准配置是需要写这个的)。

最后执行make dep && make。

编译通过后,把可执行文件拷贝到/home/luoyun/nfs那个挂载了的文件夹上即可。

转载请注明出处:http://blog.csdn.net/luoyun614/article/details/46526645

时间: 2024-10-28 21:46:27

Hi3518开发板开发总结的相关文章

S3C6410开发板开发环境的搭建

本节主要介绍了S3C6410开发板及OK6410开发板.OK6410开发板是基于ARM11处理器的S3C6410,采用“核心版+底板”结构 主要步骤如下:. OK6410开发板自带一个串口,PC也需要与串口设备通信.Ubuntu Linux安装串口调试工具minicom步骤: 第1步:检测当前系统是否支持USB转串口 第2步:安装minicom 第3步:配置minicom 第4步:测试minicom OK6410默认安装WinCE6.0,需要先卸载再安装Android,烧写要启动Eboot擦除N

i.MX8M系列开发板开发资料(米尔MYD-JX8MX)

1. i.MX8M开发板概述NXP 公司的 i.MX8M 系列的应用处理器基于 Arm? Cortex?-A53 和 Cortex-M4 内核, 具有业界领先的音频.语音和视频处理功能,适用于从消费家庭音频到工业楼宇自动化及移 动计算机等广泛应用. 作为 NXP 官方合作的设计公司,米尔电子推出了基 于 NXP 公司 i.MX8M 系列芯片的开发平台 MYD-JX8MX 系列开发板,以满足这一类高性能 产品的板卡要求.该开发板采用核心板加底板的形式, 提供了 HDMI,LVDS(或 MIPI).

5.安装 Linux 系统到开发板

课程要求: 1. 了解linux嵌入式系统的组成和启动流程. 2. 通过SD卡自动烧写Linux系统到nand flash中. 3. 体验Linux+Qt系统. 实验器材: 软件: 1.OK6410光盘A,B. 硬件: 1. PC机一台. 2. SD卡读卡器各一 3. OK6410开发板一套. 4. USB转串口线一条. 背景知识: 1. Qtopia简介: Qtopia 是 Trolltech 公司为采用嵌入式 Linux 操作系统的消费电子设备而开发的综合应用平台, Qtopia 包含完整的

最强PSoC3开发板,专业CY8C3866AXI-040核心板,无需昂贵的Miniprog3

IFLabs精品PSoC3核心板,是全网最强CY8C3866AXI-040核心开发板,无需购买价格高昂的Miniprog3编程器也可以开展PSoC3芯片的学习和开发.同时,经过IFLabs专业设计团队的优化设计,使得PSoC3核心板拥有小巧的尺寸,可以作为一个功能模块轻松嵌入到用户的电路板系统中,从而实现可重复利用.IFLabs专业设计团队还精心打造了几个非常典型的例子,涉及组件应用.USB接口固件驱动以及上位机开发.BoostConvertor开发.Android智能手机接口应用等等.这些例子

嵌入式Linux开发板

嵌入式Linux开发板开发介绍: iTOP-4412嵌入式Linux开发板搭载三星Exynos四核处理器,配备1GB内存,4GB固态硬盘EMMC存储,独家配备三星S5M8767电源管理,配备Android.Linux + Qt.Ubuntu操作系统,开启学习.研发的全新方式. 嵌入式Linux开发板优势: 嵌入式Linux开发板支持SCP POP两种封装的核心板 嵌入式Linux开发板完美实现DVFS(动态电压频率调整) 全三星品质,DDR/FLASH/PMU原装三星用料 核心板的引出脚全,超强

PSoC3开发板,无需昂贵的MiniProg3,CY8C3866AXI-040,内置USB BootLoader

学习PSoC3一定需要使用Miniprog3编程器吗?为大家分享一个IFLabs性价比很高的PSoC3开发板. 无需昂贵的Miniprog3编程器也可以轻松开发和学习PSoC3,基于功能强大的CY8C3866AXI-040芯片,开发板上内置USB BootLoader. 开发板详情:http://item.taobao.com/item.htm?id=43495032490了解IFLabs淘宝店铺:IdeaFutureLab 1.1 基本功能概述 开发板主要用于Cypress PSoC3系列芯片

Digispark(ATTINY85) 微型开发板驱动安装与开发环境配置教程

前几天无聊就弄了弄这个玩,网上教程可能有点杂,在这里就总结一下. Digispark开发板(也就是badusb)能干什么,自己搜去,/坏笑. 1.准备材料:Attiny85微型 USB接口开发板 Digispark kickstarter扩展板开发板(淘宝上9 RMB左右,我自己在这里购买的:点击进入,自己斟酌哪里购买) 这个可以直接连接电脑的USB接口. 2.接着安装Arduino IDE来配置环境. 各版本下载链接:https://pan.baidu.com/s/1T7OetboNNUneK

TPYBoard:一款可以发挥无限创意的MicroPython开发板

今天给大家带来一款MicroPython开发板的拆解和测评.所谓MicroPython也就是运行在单片机上的Python.Python在国外是一门非常热门的编程语言,近些年在国内也被发掘与追捧, Python的开放.简洁.黏合正符合了现发展阶段对大数据分析.可视化.各种平台程序协作产生了快速的促进作用.自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢经过了太漫长的时间,然而可能也与国情与发展需求有着相当的关系.总之,越来越多人开始使用Python. 先简单说说C

制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统

转自网络,供学习记录使用,红色部分是我实验时,这篇文章和网站稍有出入的地方. 目的:制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统 在http://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/quickstart/zynq(姑且把这个链接成为链接1吧)链接中找到 图1 点击绿色字体的链接,下载镜像原始文件.这里有不同时期的版本,本说明中选择 图2 下载的原始文件为:2014_R2-