登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> 程序员学前班[不再更新,只读] >> 主题: DM6446,DM357,DM365 的交叉编译环境[MV arm_v5t_le-]的安装方法     [回主站]     [分站链接]
标题
DM6446,DM357,DM365 的交叉编译环境[MV arm_v5t_le-]的安装方法
clq
浏览(0) + 2010-06-13 15:05:46 发表 编辑

关键字:

DM6446,DM357,DM365 的交叉编译环境[MV arm_v5t_le-]的安装方法

其实是同一个程序,只是同时支持这些芯片. 其实本质上是一种 linux 交叉编译环境. 虽然它们基于 arm 但是你在网上找个 arm 的交叉编译环境弄出来的程序是没法用的.

其实步骤在 ti 的网站上都有,不过 linux 这玩意细节不弄好你是玩不转的,咳咳,很是讨厌. 其网址在

http://processors.wiki.ti.com/index.php/DMAI_GStreamer_Plug-In_Getting_Started_Guide

关键点为:
--------------------------------------------------

MV toolchain installation

If your target hardware build requires the MV toolchain, install as follows:

chmod ugo+x mvl_5_0_0801921_demo_sys_setuplinux.bin 
chmod ugo+rwx /opt # this might make some system administrators nervous
./mvl_5_0_0801921_demo_sys_setuplinux.bin --mode console --prefix /opt/mv_pro_5.0
cd /opt/mv_pro_5.0
sudo tar -xzf mvltools5_0_0801921_update.tar.gz # super user privileges needed for device files in the target file system


clq
2010-6-13 15:26:45 发表 编辑

其实就是下载一个 bin 文件然后执行. 完了在指定的目录 "/opt/mv_pro_5.0" 中会得到一个 mvltools5_0_0801921_update.tar.gz 文件,把它解压就行了.
--------------------------------------------------
完成这一步有几个关键的地方,首先是指定目录,可以指定别的,不过为了少点麻烦用这个好了. 一般来说要用 mkdir 命令自己建一个.
再一个很关键的是解压文件是正常情况下是不会有任何输出的,我在 colinux 映射的 windows 下解压过,出了一大堆的警告,后来放到 linux 自己的 ext3 分区上就没事了.
--------------------------------------------------
要编译程序的话还要指定工具集的路径,比如这样:
export PATH="/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_5.0/montavista/pro/bin:/opt/mv_pro_5.0/montavista/common/bin:$PATH"
然后就可以这样编译了:
arm_v5t_le-gcc hello.c -static -o hello3

网上的教程都说要改如下
"
gedit ~/.bashrc   (最好在普通用户和Root用户都建立)
在最后加入下面命名:
export   PATH="/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_5.0/montavista/pro/bin:/opt/mv_pro_5.0/montavista/common/bin:$PATH"
运行:
source ~/.bashrc
使环境变量生效。
在命名行输入arm+[tab]会出现交叉编译工具。
"
我觉得这样使用别的工具时很容易混乱,出错很难查找,还是每次编译前设置一下比较好.
真要改环境配置也不要改 bashrc , 直接改 /etc/profile 比较好,要不别的用户下又不行了.

上面的编译命令中 -static 表示静态编译,因为目标板上经常丢三拉4的没这个那个库,来个静态的好了,当然某些程序是一定要动态库的.

clq
2010-6-13 15:28:01 发表 编辑

以上只是写普通程序的,要用 ti 的相关功能还要装其 sdk ,下面为网友写的完整教程.
--------------------------------------------------
1、安装ubuntu

安装大概10分钟会自动检查站点,看个人网速,之后会出现下载语言包(如果选择汉语),点跳过就行了。同步时间也可以跳过。再过几分钟就安装完了。

2、安装vmtools

最好先把光碟弹出,右键unmount,点install vmtools,安装完重启。

3、安装samba

一、安装samba

sudo apt-get install samba

sudo apt-get install smbfs

下载速度慢的话记得换个软件源。

二、创建共享目录

mkdir /home/cyh/share

sodu chmod 777 /home/cyh/share

三、配置文件

1、备份配置文件

sodu mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

2、创建新的samba配置文件

sudo vim /etc/samba/smb.conf

;#############smb.conf#############


[global]


;创建工作组


workgroup=MYGROUP


;安全级别


security=share


guest OK=yes


[share]


;设置共享文件夹路径


path=/home/cyh/share


browseable=yes


writeable=yes

存盘退出。


四、测试


testparm


五、重启samba服务


sudo /etc/init.d/samba restart


六、重启。


七、映射


XP下右键“我的电脑”==》映射网络硬盘


输入IP及共享文件夹,OK。


4、安装目标板Linux

sudo mkdir /opt/mv_pro_5.0

cd /tmp

sudo chmod 777 mvl_5_0_0_demo_lsp_setuplinux_02_10_00_14.bin

Sudo chmod 777 mvl_5_0_0801921_demo_sys_setuplinux.bin

gksudo ./mvl_5_0_#_demo_sys_setuplinux.bin

安装目录设为/opt/mv_pro_5.0

gksudo ./mvl_5_0_0_demo_lsp_setuplinux_#_#_#_#.bin

同上

转到/opt/mv_pro_5.0解压里面的两个文件

sudo tar -zxvf mvltools5_0_0801921_update.tar.gz

解压要几分钟时间

sudo tar -zxvf DaVinciLSP_02_10_00_14.tar.gz

5、安装DVSDK软件包

sudo   ./dvsdk_setuplinux_2_10_01_18.bin

安装在~/dvsdk_2_10_01_18

sudo   ./xdctools_setuplinux_3_15_01_59.bin

安装在~/dvsdk_2_10_01_18/xdctools_3_15_01_59

完了删除安装文件。

6、安装A/V Demo文件

cd ~/dvsdk_2_10_01_18/clips

sudo tar -zxvf data.tar.gz

7、安装Linux测试平台(LPTB)

cd ~

sudo tar -zxvf Linux\ Preformance\ Test\ Bench-LPTB-02.03.00.02-beta.bin

完成后生成LPTB-02.03.00.02-beta文件夹

8、安装NFS文件系统

cd ~

sudo mkdir -p workdir/filesys

cd workdir/filesys

复制montavista系统到当前文件夹:

sudo cp -a /opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/target/* .

比较久。

更改操作权限:

sudo chown -R $USER opt

安装NFS服务包:

sudo apt-get install nfs-kernerl-server

配置文件:

sudo gedit /etc/exports

加入下面一行:

/home/<useracct>/workdir/filesys *(rw,no_root_squash,no_all_squash,sync)

激活后重启NFS服务:

sudo /usr/sbin/exports -av

sudo /etc/init.d/nfs-kernerl-server restart

关防火墙:

sudo iptables -F

9、测试共享文件系统

以下通过串口连接目标板后在超级终端输入:

EVM # setenv nfshost 192.168.0.223     (hostIP)

EVM # setenv rootpath /home/cyh/workdir/filesys     (NFS目录)

EVM# setenv bootargs console=ttyS0,115200n8 noinitrd rw ip=dhcp root=/dev/nfs nfsroot=$(nfshost):$(rootpath),nolock mem=76M video=davincifb:vid0=OFF:vid1=OFF:osd0=720x576x16,4050K dm365_imp.oper_mode=0 davinci_capture.device_type=4

(设定为固定IP时,把dhcp改为分配的IP就行了。

EVM# setenv bootargs console=ttyS0,115200n8 noinitrd rw ip=192.168.0.222 root=/dev/nfs nfsroot=$(nfshost):$(rootpath),nolock mem=76M video=davincifb:vid0=OFF:vid1=OFF:osd0=720x576x16,4050K dm365_imp.oper_mode=0 davinci_capture.device_type=4)

10、建立开发环境

gedit ~/.bashrc   (最好在普通用户和Root用户都建立)

在最后加入下面命名:

export   PATH="/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_5.0/montavista/pro/bin:/opt/mv_pro_5.0/montavista/common/bin:$PATH"

运行:

source ~/.bashrc

使环境变量生效。

在命名行输入arm+[tab]会出现交叉编译工具。

11、安装LSP支持包

复制MontaVista Linux Support Package到工作目录中,里面包含了Davinci的驱动。

sudo mkdir /home/cyh/workdir/lsp

cd /home/cyh/workdir/lsp

cp -R /opt/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci

12、为主机设置工作环境

cd ~/dvsdk_2_10_01_18

sudo gedit Rules.make

检查以下的设置,确保和实际路径相符:

PLATFORM=dm365

DVSDK_INSTALL_DIR=$HOME/dvsdk_#_#

XDC_INSTALL_DIR=$HOME/dvsdk_#_#/xdctools_#_#

LINUXKERNEL_INSTALL_DIR=$HOME/workdir/lsp/ti-davinci/linux-2.6.18_pro500(更改)

MVTOOL_DIR=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le

EXEC_DIR=$HOME/workdir/filesys/opt/dvsdk    (更改)

然后依次运行:

make clean

make

      make install


clq
2010-6-13 15:35:20 发表 编辑

下面是一个搭建普通 arm 交叉环境的教程,注意这样编译出来的程序是不能在 DM 系列板子上的,不过其他东西都是一样的.其实按道理应该也只可以用的,可能是 arm 编译上还有什么细节,不管了,反正人家 ti 已经给你弄好了.
--------------------------------------------------
arm嵌入式cross-2.95.3交叉环境的建立
2009-11-15 13:03

1 下载cross-2.95.3
http://ftp.arm.linux.org.uk/pub/armlinux/toolchain/cross-2.95.3.tar.bz2

2 安装cross-2.95.3
sudo mkdir /usr/local/arm
sudo cp cross-2.95.3.tar.bz2 /usr/local/arm
cd /usr/local/arm
sudo tar jxvf cross-2.95.3.tar.bz2

3 修改环境变量PATH
在/etc/profile文件末尾加上
PATH=$PATH:/usr/local/arm/2.95.3/bin

source /etc/profile #使其立即生效

arm-linux-gcc -v   #检验是否安装成功

      编写如下代码(也可以编写其他C代码):

      #include<stdio.h>

      int main()

      {

      printf("Hello,world!\n");

      return 0;

      }

      测试编译环境

      arm-linux-gcc -o hello hello.c

      file hello

      执行后出现如下信息表示通过:

    hello: ELF......

遇到问题:

提示错误:

arm-linux-gcc: Command not found

PATH里有/usr/local/arm/2.95.3/bin, /usr/local/arm/2.95.3/bin/下有arm-linux-gcc文件,但是make的时候,就是找不到arm-linux-gcc

原因:

export PATH=$PATH:/usr/local/arm/2.95.3/bin

是设置当前用户的PATH,而sudo执行make的时候,使用的是超级用户权限,那也就使用了超级用户的PATH(但是这个PATH里,并没有/usr/local/arm/3.4.1/bin)

解决办法:

先打开一个超级用户权限的shell:

sudo –s

在当前shell下,设置环境变量:

export PATH=$PATH:/usr/local/arm/2.95.3/bin

执行结果:

root@dantes-laptop:/usr/local/arm# arm-linux-gcc -o hello hello.c

root@dantes-laptop:/usr/local/arm# file hello

hello: ELF 32-bit LSB executable, ARM, version 1, dynamically linked (uses shared libs), for GNU/Linux 2.0.0, not stripped

clq
2010-6-13 15:41:22 发表 编辑

另外扯一下,好象开源系统的很喜欢生成一大堆无尽的文件夹,这种文件夹一但生成基本上在 windows 系统中就不能将其删除,比较奇怪.


总数:4 页次:1/1 首页 尾页  
总数:4 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1