How_to_build_an_ARM/DSP_Hello_World_program_on_the_DaVinci_EVM 续

原创 2012年03月23日 14:35:36

解决dsplinkdata.lib缺失问题

前面写过一篇how to build an arm/dsp hello world program on the davinci evm,

那前面其实并不算运行成功,因为尽管编译通过,在运行的时候还是会有failed,具体错误当时没有截图留证现在也没法弄了。

当时是开发板直接提供的虚拟机,里面的sdk什么工具都装好了,但是里面差一些文件,不晓得是他们删掉了还是怎么回事。前两天在Red Hat Enterprise 5里面自己建立了开发环境,当然都是照着Get Start那个文档来的。参照前面的文章Red Hat Enterprise 5下面的samba nfs 软件安装等等。

今天突然想到这个里面有个scale例程,因为在TI的codec engine alogorith creator usr guide里面提到这个,就重新弄下这个例子了。

照着http://processors.wiki.ti.com/index.php?title=How_to_build_an_ARM/DSP_Hello_World_program_on_the_DaVinci_EVM

这个文章里面编译的时候有可能会提示如下错误,就是找不到dsplinkdata.lib的文件,

试了不少方法,最后才找到终极解决方式,写出来以供参考。

先写失败的方法:

失败一:

因为有人建议这个文件好像没有什么用就直接新建一个.txt文件,重命名为dsplinkdata.lib 结果提示文件长度过短,因为新建文档是空的,

既然是文件长度过短,那就加长好了,随便复制点东西进去,这下总行了吧。然后就提示****找不到,这里的****可能就是你复制进去东西里面的一个词。估计他是用文件指针在里面取出来的,这种方法行不通

失败二:

将本来就有的dsplink.lib复制一份改名成dsplinkdata.lib 结果编译错误提示更多。。。无语

找资料http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/t/29343.aspx

在这篇文章中有人提到同样的问题,找到了原因说是dsplink重新编译就可以生成dsplinkdata.lib这个文件,但是按照sprue66d.pdf  TMS320DM6446 DVEVM v1.30 Getting Started Guide A.5讲到的Rebuilding DSP/BIOS link 重新生成了dsplinkk.ko等一些文件,没有dsplinkdata.lib这个文件,

但是有一点提示就是在文件中重新编译dsp/bios用的是命令 sh-f buildmodule.sh

在同一个文件夹下还有另外几个文件,研究研究,也许有用。

用Text Edit 或者其它文本编辑工具打开每个文件查看,这些文档都写的很标准,在里面讲到每个文件的路径,作用

buildmodule.sh           Script to build the kernel module

dsplinkcfg                     Calls perl script to create build configuration for

dsplinkenv                    Sets the necessary environment for DSP/BIOS(TM) Link development

dsplinkenv.bash          Sets the necessary environment for DSP/BIOS(TM) Link development

dspmake                       Builds the dsp side libraries, samples and testsuite for OMAP.

dspprobemake            Sets the necessary environment for DSP/BIOS(TM) Link development.

这里有用的就是dspmake这个文件,看到它对应的作用build the dsp side libraries samples and testsuite.可以生成dsp侧的库,例程等。我们要的就是这个

执行dspmake 提示以下错误

Compiling failure.c...
/bin/sh: C:ti-toolsC6000cgtoolsbincl6x: command not found
make[3]: *** [failure.c.rel] Error 127
make[2]: *** [objrel] Error 2
make[1]: *** [gen.objrel] Error 2
make: *** [base.objrel] Error 2

这个可能是因为我在配置的时候选择的是windows平台,没关系,我已经照着how to build an hello world 那个文章里面设置好了,大不了到xp下面去找到对应文件编译。

注意上面提到的文件都是在$(DSPLINK)/etc/host/scripts/Linux/  这个路径下,到xp下面就要换到对应的文件夹,例如$(DSPLINK)/etc/host/scripts/msdo/下面的dspmake.bat

以下是我的DSP/BIOS LINK配置文件,不一定完全一致,能用就好。用这个文件可以生成库文件,和例子,正是我需要的。

 See: E:\dsplink_140-05p1\packages\dsplink\config\CURRENTCFG.MK

 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 The selected configuration is:

 GPP OS             = Linux
 DSP OS             = DspBios
 GPPDISTRIBUTION    = davinci_mvlpro4.0
 GPPOSVERSION       = 2.6
 DSPDISTRIBUTION    = c64xxp_5.xx_windows

 GPPPLATFORM        = Davinci
 DSPPLATFORM        = Davinci

 USE_PROC           = 1
 USE_POOL           = 1
 USE_NOTIFY         = 1
 USE_MPCS           = 1
 USE_RINGIO         = 1
 USE_MPLIST         = 1
 USE_CHNL           = 1
 USE_MSGQ           = 1

 TRACE              = 1
 PROFILE            = 0
 PROBE              = 0

 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Edit GPP and DSP distribution files for user specific path
 settings for OS base directory, tool chain path etc

 Edit GPP distribution file:
 E:\dsplink_140-05p1\packages\dsplink\make\Linux\davinci_mvlpro4.0.mk
 Edit DSP distribution file:
 E:\dsplink_140-05p1\packages\dsplink\make\DspBios\c64xxp_5.xx_windows.mk


然后在对应的samples文件夹下gmake -s Release就好了


E:\dsplink_140-05p1\packages\dsplink\etc\host\scripts\msdos>cd %DSPLINK%\dsp\src
\samples

E:\dsplink_140-05p1\packages\dsplink\dsp\src\samples>gmake -s Release

具体例程输出还有待验证,先记下这些。。。



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Building an MPI program with Managed Build(Eclipse 下怎么创建简单的MPI hello world 程序)

Topics include: Creating an MPI project Include pathsspecifying the mpicc toolchainlaunching an ...

How to Build Android Applications Based on FFmpeg by An Example

This is a follow up post of the previous blog How to Build FFmpeg for Android.  You can read the p...

How to debug codec code on DM6467T EVM

How to debug codec code on DM6467T EVM rated by 0 users This post has 2 Replies | 3 Fol...

how to use a SQLite database in a standalone program with an HTML interface and VBScript as the programming language

This article describes how to use a SQLite database in a standalone program with an HTML interface a...

How to Add An Automatically Executable Program in YOCTO?

If we want to have a program running in the OS (operating system), we must know the answers of follo...

NDK编译问题: Program "ndk-build" is not found in PATH 和 Unable to launch cygpath. Is Cygwin on the path?

遇到两个问题分别解决。 问题一:Program "ndk-build" is not found in PATH 问题二:Unable to launch cygpath. Is Cygwin o...

How to Compile and Run C/C++ program on Ubuntu 11.10

How to Compile and Run C/C++ program on Ubuntu 11.10 Ubuntu 11.10 (Oneiric Ocelot) is one of th...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)