1、简介

本文主要介绍在ubuntu10.04下安装TI的多媒体处理器TMS320DM365的开发环境,使用的新版DVSDK开发包,版本为dvsdk_4_02_00_06。

DM368的新版本DVSDK环境搭建跟DM365的很类似,直接参考即可。

2、声明

本文源自老K(蓝海):http://blog.csdn.net/r051463438,原创作品,转载请保留本声明,以示对作者劳动的尊重。

3、安装Vmware Workstation 7.1.3

Windows下普通软件安装,参阅网上资料即可。

4、安装ubuntu 10.04

ubuntu10.04环境安装不在本文档内详细介绍,请参考另一文档《VM下安裝ubuntu10.04的详细图文笔记》。安装完ubuntu后,还有一些小项需要配置,请参考另一文档《新装ubuntu10.04后的一些设置》。这两个文档参考声明部分里作者的博客或文档下载的有关内容。

5、设置共享目录

以上完成后,新建一个共享目录,用于在ubuntu与windows之间共享文件,并在VMware虚拟机上进行设置,实现共享。这里我用于共享的目录是“F:\ubuntu\share_dir”,同时在ubuntu下看到的名称设置为“share_dir”,根据自己的情况进行适当的修改,但最好在ubuntu下的名称一样,方便看笔记。

6、准备安装文件

到TI官网下载DM365最新版的软件开发包dvsdk_4_02_00_06,下载网址如下:

http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/DVSDK_4_00/4_02_00_06/index_FDS.html

下载文件为dvsdk_dm365-evm_4_02_00_06_setuplinux,是没有扩展名的,下载需要注册,并填写一些信息才能通过下载。

新版的DVSDK所需的交叉编译工具链和以前用的DVSDK_2_10_01_18时的不一样,也要重新下载,下载网址如下:

https://sourcery.mentor.com/sgpp/lite/arm/portal/release858

下载文件为arm-2009q1-203-arm-none-linux-gnueabi.bin

下载完后,将这两个文件拷贝到共享目录“F:\ubuntu\share_dir”下,这样LINUX端就可以在/mnt/hgfs/share_dir/下看到它们:

arm-2009q1-203-arm-none-linux-gnueabi.bin

dvsdk_dm365-evm_4_02_00_06_setuplinux

7、交叉编译工具的安装

切换当前工作目录到/mnt/hgfs/share_dir/,执行下面的命令开始安装

cd /mnt/hgfs/share_dir

sudo ./arm-2009q1-203-arm-none-linux-gnueabi.bin

安装交叉编译环境时可能会出现这样的错误:

kevin@kv-ubuntu:share_dir$sudo ./arm-2009q1-203-arm-none-linux-gnueabi.bin

Theinstaller has detected that your system uses the dash shell

as /bin/sh.  This shell is not supported by the installer.

You canwork around this problem by changing /bin/sh to be a

symboliclink to a supported shell such as bash.

Forexample, on Ubuntu systems, execute this shell command:

% sudo dpkg-reconfigure -plow dash

Install as /bin/sh? No

Pleaserefer to the Getting Started guide for more information,

orcontact CodeSourcery Support for assistance.

阅读返回的错误信息大概可以知道是当前的dash shell不支持安装,解决的办法也已经给出,直接按返回的信息上的解决办法,在终端输入命令:

sudo dpkg-reconfigure -plow dash

中间提示“Install dashas /bin/sh?”时选择“No”,如图所示。

该过程返回的信息如下所示:

Removing`diversion of /bin/sh to /bin/sh.distrib by dash'

Adding`diversion of /bin/sh to /bin/sh.distrib by bash'

Removing`diversion of /usr/share/man/man1/sh.1.gz to/usr/share/man/man1/sh.distrib.1.gz by dash'

Adding`diversion of /usr/share/man/man1/sh.1.gz to/usr/share/man/man1/sh.distrib.1.gz by bash'

解决问题后再重新执行一次安装交叉编译工具命令,现在就可以正常安装了,接着上面的安装过程截图如下:

直接下一步next

选择接收license条款,下一步next

直接下一步

选择典型安装Typical,然后下一步

这一步是选择交叉编译工具的安装路径,不用默认的,点Choose选择按钮

选择安装路径为/opt/arm-2009q1,如果目录不存在,先新建目录,创建按钮在图右上角圈出

路径好了,下一步

选择Modefy PATH for current user,下一步

选择Link链接安装目录,点击Choose按钮

路径选择为/opt/arm-2009q1/CodeSourcery,目录不存在则先创建

安装信息预览,确定无误后,点击install按钮开始安装

等待安装完成。。。。。。

点下一步

安装完成,点Done按钮退出安装界面。

8、交叉编译工具的配置

vim ~/.bashrc

在最后加入下面内容:

export  PATH="/opt/arm-2009q1/bin:$PATH"

运行:

source ~/.bashrc

使环境变量生效,现在打印一下PATH变量,其中应该要包括刚刚加入的“/opt/arm-2009q1/bin”

echo $PATH

我的回显如下所示:

kevin@kv-ubuntu:share_dir$echo $PATH

/opt/arm-2009q1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

现在,在终端输入“arm-”再按tab键就会出现交叉编译工具。

kevin@kv-ubuntu:share_dir-2$arm-none-linux-gnueabi-

arm-none-linux-gnueabi-addr2line  arm-none-linux-gnueabi-gprof

arm-none-linux-gnueabi-ar         arm-none-linux-gnueabi-ld

arm-none-linux-gnueabi-as         arm-none-linux-gnueabi-nm

arm-none-linux-gnueabi-c++        arm-none-linux-gnueabi-objcopy

arm-none-linux-gnueabi-c++filt    arm-none-linux-gnueabi-objdump

arm-none-linux-gnueabi-cpp        arm-none-linux-gnueabi-ranlib

arm-none-linux-gnueabi-g++        arm-none-linux-gnueabi-readelf

arm-none-linux-gnueabi-gcc        arm-none-linux-gnueabi-size

arm-none-linux-gnueabi-gcc-4.3.3  arm-none-linux-gnueabi-sprite

arm-none-linux-gnueabi-gcov       arm-none-linux-gnueabi-strings

arm-none-linux-gnueabi-gdb        arm-none-linux-gnueabi-strip

arm-none-linux-gnueabi-gdbtui

9、安装DVSDK_4_02_00_06

在/mnt/hgfs/share_dir/目录下执行安装dvsdk开发包,以普通用户安装就行。

./dvsdk_dm365-evm_4_02_00_06_setuplinux

安装开始,过程截图如下:

直接Yes

直接下一步

到了这步就出现错误了,从错误提示信息可以看到,是fakeroot没找到,要安装一下,安装命令错误信息里也给出了,在终端输入命令安装:

sudo apt-get install fakeroot

整个安装回显如下:

kevin@kv-ubuntu:share_dir$ sudo apt-get installfakeroot

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following NEW packages will be installed:

fakeroot

0 upgraded, 1 newly installed, 0 to remove and 316 notupgraded.

Need to get 118kB of archives.

After this operation, 451kB of additional disk spacewill be used.

WARNING: The following packages cannot beauthenticated!

fakeroot

Install these packages without verification[y/N]? y

Get:1 http://cn.archive.ubuntu.com/ubuntu/ lucid/mainfakeroot 1.14.4-1ubuntu1 [118kB]

Fetched 118kB in 1s (107kB/s)

Selecting previously deselected package fakeroot.

(Readingdatabase ... 129286 files and directories currently installed.)

Unpacking fakeroot (from .../fakeroot_1.14.4-1ubuntu1_i386.deb)...

Processing triggers for man-db ...

Setting up fakeroot (1.14.4-1ubuntu1)...

update-alternatives: using /usr/bin/fakeroot-sysv toprovide /usr/bin/fakeroot (fakeroot) in auto mode.

安装结束后,再重新执行dvsdk的安装命令,这回就不会再出现错误了,接着上面的安装过程,截图如下所示:

直接Next

选择交叉编译工具链路径,按上面的安装,这里应该选择“/opt/arm-2009q1/bin”,选择好后OK继续

提示在指定路径下找到了可用的交叉编译工具链

选择DVSDK安装路径

安装路径设置为“/home/kevin/dvsdk_4_02_00_06-dm365”,这里我直接输入然后点OK

最后可以看到DVSDK安装路径,下一步

选择组件,全部选择,下一步

安装开始前信息浏览,正确无误可以下一步了

等待安装完成。。。。。。。。。。

安装项目全部完成后,“Next”按钮会使能,点击到下一步

点击Finish按钮退出安装界面,安装结束后会打开一个PDF版本的软件开发指南文档。

10、编译DVSDK_4_02_00_06

从DVSDK4开始,TI的达芬奇软件开发包一改以往的软件多、散、乱(特别是DVSDK2),把所有的包全部集合到了一起,一个包就全部安装完了,方便了很多,相比以前的软件包确实人性化了一点。

现在到dvsdk安装目录下一睹它的“芳容”吧。

cd ~/dvsdk_4_02_00_06-dm365

ls

du -sh

整个软件包安装完只有1.9GB,当然,这是还没有编译之前的,编译后就不止这个数了。现在就编译一下,也可以检验一下前面安装的交叉编译工具是否正确,编译的目标是什么呢,说实话这新的DVSDK也是第一次用,编译的目标真不知道叫什么,先看看DVSDK根目录下的Makefile文件吧,看完就知道怎么用了。

先来个全部清除,在终端输入如下命令:

make clean

更多的用法通过help目标来查看:

make help

清除u-boot使用命令:

make u-boot_clean

编译u-boot使用命令:

make u-boot

清除kernel使用命令:

make linux_clean

配置kernel使用命令:

make linux_config

编译kernel使用命令:

make linux

这一版的DVSDK编译的时候我发现有一个很隐蔽的问题,是在编译内核的过程中打印了出来的,但是编译过程不会停止,所以不注意观察的话较难发现,该问题打印信息如下:

"mkimage" command not found -U-Boot images will not be built

mkimage命令没找到,这个问题比较普遍,也容易解决。mkimage是u-boot的tools目录下的一文件,要编译u-boot后才会生成的,生成之后,要将这个文件拷贝到交叉编译工具的bin目录下,这样才能在编译内核时正确生成可以被u-boot引导起来的uImage镜像文件。知道了原因解决办法就好办了,下面列出两种解决办法,任选其一即可。

第一种办法是单独编译u-boot,编译完后将tools目录下的mkimage文件拷贝到前面安装的交叉编译工具目录下的bin目录里:

make u-boot

sudo cp psp/u-boot-2010.12-rc2-psp03.01.01.39/tools/mkimage /opt/arm-2009q1/bin/

另一办法就是直接在线安装一个,在终端输入命令:

sudo apt-getinstall mkimage

然后就可以开始编译所有的软件了

make

这个过程要花点时间,打杯水休息一下,等着它编译。在差不多编译完成时,到了倒数第二个目标gstreamer-ti的时候,会出现下面的错误:

make[1]: Entering directory`/home/kevin/dvsdk_4_02_00_06-dm365/gstreamer-ti_svnr919'

./autogen.sh --noconfigure

+ configure run disabled

+ check for build tools

checking for autoconf >= 2.52 ... notfound.

checking for autoconf259 >= 2.52 ... notfound.

checking for autoconf257 >= 2.52 ... notfound.

checking for autoconf-2.54 >= 2.52 ... notfound.

checking for autoconf-2.53 >= 2.52 ... notfound.

checking for autoconf-2.52 >= 2.52 ... notfound.

not found !

You must have autoconfinstalled to compile gstticodecplugin.

Download the appropriatepackage for your distribution,

or get the source tarball atftp://ftp.gnu.org/pub/gnu/autoconf/

checking for automake >= 1.7 ... notfound.

checking for automake-1.9 >= 1.7 ... notfound.

checking for automake19 >= 1.7 ... notfound.

checking for automake-1.7 >= 1.7 ... notfound.

checking for automake-1.6 >= 1.7 ... notfound.

checking for automake-1.5 >= 1.7 ... notfound.

not found !

You must have automakeinstalled to compile gstticodecplugin.

Download the appropriatepackage for your distribution,

or get the source tarball atftp://ftp.gnu.org/pub/gnu/automake/

checking for libtoolize >= 1.5.0... found 2.2.6b, ok.

checking for pkg-config >= 0.8.0... found 0.23, ok.

- Please get the right toolsbefore proceeding.

- Alternatively, if you'resure we're wrong, run with --nocheck.

make[1]: *** [configure]Error 1

make[1]: Leaving directory`/home/kevin/dvsdk_4_02_00_06-dm365/gstreamer-ti_svnr919'

make: *** [gstreamer_ti]Error 2

意思已经说的很明显了,没有检测到autoconf和automake,在终端输入命令安装:

sudo apt-getinstall autoconf automake

安装过程要求输入确认信息,输入Y

kevin@kv-ubuntu:dvsdk_4_02_00_06-dm365$sudo apt-get install autoconf automake

Reading package lists...Done

Building dependency tree

Reading state information...Done

The following extra packageswill be installed:

autotools-dev m4

Suggested packages:

autoconf2.13 autoconf-archive gnu-standardsautoconf-doc libtool gettext

The following NEW packageswill be installed:

autoconf automake autotools-dev m4

0 upgraded, 4 newly installed,0 to remove and 347 not upgraded.

Need to get 1,685kB ofarchives.

After this operation, 4,915kBof additional disk space will be used.

Do you want tocontinue [Y/n]? y

WARNING: The followingpackages cannot be authenticated!

m4 autoconf autotools-dev automake

Install thesepackages without verification [y/N]? y

Get:1http://cn.archive.ubuntu.com/ubuntu/ lucid/main m4 1.4.13-3[241kB]

Get:2http://cn.archive.ubuntu.com/ubuntu/ lucid/main autoconf 2.65-3ubuntu1[772kB]

Get:3http://cn.archive.ubuntu.com/ubuntu/ lucid/main autotools-dev 20090611.1[64.1kB]

Get:4http://cn.archive.ubuntu.com/ubuntu/ lucid/main automake 1:1.11.1-1[608kB]

Fetched 1,685kB in 1min 42s(16.4kB/s)

Selecting previouslydeselected package m4.

(Reading database ... 130369 files anddirectories currently installed.)

Unpacking m4 (from.../archives/m4_1.4.13-3_i386.deb) ...

Selecting previouslydeselected package autoconf.

Unpacking autoconf (from.../autoconf_2.65-3ubuntu1_all.deb) ...

Selecting previouslydeselected package autotools-dev.

Unpacking autotools-dev (from.../autotools-dev_20090611.1_all.deb) ...

Selecting previouslydeselected package automake.

Unpacking automake (from.../automake_1%3a1.11.1-1_all.deb)...

Processing triggers forinstall-info ...

Processing triggers forman-db ...

Processing triggers fordoc-base ...

Processing 26 changed 1 addeddoc-base file(s)...

Registering documents withscrollkeeper...

Setting up m4 (1.4.13-3)...

Setting up autoconf(2.65-3ubuntu1) ...

Setting up autotools-dev(20090611.1) ...

Setting up automake (1:1.11.1-1)...

update-alternatives: using/usr/bin/automake-1.11 to provide /usr/bin/automake (automake) in auto mode.

安装完成后,再重新输入命令编译所有软件

make

这回所有的错误都解决了,几分钟就可以把剩下的编译完,到此,基本上大功告成。

11、安装NFS文件系统

在DVSDK根目录下可以看到一个名为filesystem的目录,在该目录下,TI提供了两个文件系统压缩包:

其中dvsdk-dm365-evm-rootfs.tar.gz比较大,有265M,但东西全,也是该版本DVSDK默认使用的NFS调试文件系统。另一个arago-base-tisdk-image-dm365-evm.tar.gz小些,才11M,适合烧写。解压其中大的到/home/kevin/targetfs/目录下,作为NFS调试挂载的文件系统

mkdir ~/targetfs

cd ~/dvsdk_4_02_00_06-dm365/filesystem

sudo tar -zxvf dvsdk-dm365-evm-rootfs.tar.gz -C ~/targetfs

修改文件系统的用户和组为普通用户,我这里是kevin

sudo chown kevin:kevin ~/targetfs -R

修改Rules.make中安装指向的地址为新的文件系统地址

cd ~/dvsdk_4_02_00_06-dm365

vim Rules.make

将最后一行的EXEC_DIR改成新的文件系统路径,最终如下

EXEC_DIR=$(HOME)/targetfs

最后安装上面我们编译好的文件,新文件系统就完工了。

make install

12、参考资料

1、http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/DVSDK_4_00/4_02_00_06/index_FDS.html

2、http://zjbintsystem.blog.51cto.com/964211/621435

蓝海 <kevin_linux@163.com>

2012年01月05日于北京海淀

DM365 dvsdk_4_02_00_06开发环境搭建相关推荐

  1. DM365 dvsdk_2_10_01_18开发环境搭建

    1.简介 本文主要介绍在ubuntu10.04下安装TI的多媒体处理器TMS320DM365的开发环境,使用DVSDK开发包版本为dvsdk_2_10_01_18. 2.声明 本文源自蓝海@博客站:h ...

  2. DM368开发 -- 环境搭建

    参看:Getting Started Guide for DM368 DM365 LeopardBoard 参看:DAVINCI DM365-DM368开发攻略--开发环境搭建(DVSDK4.02) ...

  3. DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02) 适用于DM3730

    DAVINCI DM365-DM368开发攻略--开发环境搭建(DVSDK4.02) 标签:开发环境 搭建 dvsdk DM368 DM365 原创作品,允许转载,转载时请务必以超链接形式标明文章 原 ...

  4. Android环境搭建和Android HelloWorld—Android开发环境搭建

    Android_Android开发环境搭建-搭建Android的开发环境 1.我考虑先下载JDK7.0,在JDK的安装中,考虑一般SDK都是向上兼容的,于是选择了最高的版本7.0 这里是我总结的详细的 ...

  5. qt工程在linux系统里颜色显示错误_【飞凌嵌入式RK3399开发板试用体验】+QT开发环境搭建测试(二)...

    作者:飞扬的青春 在拿到开发板之后,已经体验了Android操作系统,接下来就是体验Linux下的开发,本次以QT的一个小案例来测试下. 首先是自己先搭建了一个Ubuntu18.04的虚拟机,使用真机 ...

  6. Go:分布式学习利器(1) -- 开发环境搭建 + 运行第一个go程序

    文章目录 为什么要学习 go 开发环境搭建 -- MAC 运行第一个go程序 go 函数的返回值设置 go 函数的命令行参数 为什么要学习 go 在如下几个应用场景的需求下产生了go: 超大规模分布式 ...

  7. 智能合约开发环境搭建及Hello World合约

    如果你对于以太坊智能合约开发还没有概念(本文会假设你已经知道这些概念),建议先阅读入门篇. 就先学习任何编程语言一样,入门的第一个程序都是Hello World.今天我们来一步一步从搭建以太坊智能合约 ...

  8. iPhone开发环境搭建全过程 iPhone手机开发内容,中文手册

    http://3g.edu.csdn.net/kecheng/iphone.html  iPhone手机开发内容 http://www.docin.com/p-34874880.html# iPhon ...

  9. python搭建numpy_python开发环境搭建及numpy基本属性-【老鱼学numpy】

    目的 本节我们将介绍如何搭建python的开发环境以及numpy的基本属性,这样可以检验我们的numpy是否安装正确了. python开发环境的搭建 工欲善其事必先利其器,我用得比较顺手的是Intel ...

最新文章

  1. RecyclerView因版本问题无法加载
  2. r语言做绘制精美pcoa图_R语言统计与绘图:绘制QQ图
  3. wxPython布局管理
  4. 卷积神经网络的几种典型架构
  5. java编程实现食堂饭卡刷卡_食堂饭卡管理系统设计方案报告.docx
  6. PLSQL 教程 简单上手教程
  7. NGFF、M.2、PCIe、NVMe概念区分以及PCIEx1 x4 x8 x16区别
  8. C++ Debug编译成XP系统下运行
  9. MySQL免安装版本的配置
  10. 详解 Win8 KMS 激活原理_-Chaz-_新浪博客
  11. 独孤求败-小滴云架构大课十八式
  12. Laya发布魅族小游戏,调试前步骤
  13. php多级分栏,网页设计中分栏布局的几种实现方案
  14. 香港主机CDN加速,让您的网站速度飙升
  15. 怎样在iPhone、iPad上的Safari浏览器中快速关闭所有标签页?
  16. mysql汉字插不进去_Mysql下插入汉字失败
  17. Summer Online Training Camp 1 for ICPC Training League (Recursion Backtracking)
  18. ADO 与ADO.NET
  19. 2011年网页设计发展趋势
  20. Qt-绘制圆饼图等-转摘

热门文章

  1. Python 如何截取截取字符串(字符串切片)
  2. 【CTS、VTS、ITS、GTS、GSI camera 的基础操作和 debug】
  3. java表白程序玫瑰花_给爱人的玫瑰花表白程序代码--Java版
  4. 揭秘数据解密的关键技术
  5. html在当前页面打开新的html页面(窗口)
  6. ADBMS1818菊花链通信
  7. Java对接微信支付(完整全流程)
  8. 原生态js实现充话费功能(模态框 + tab选项卡)
  9. 基于JAVA深州市特色蜜桃产业电子商务系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
  10. kaili搭建大宝剑全过程