Chinaunix首页 | 论坛 | 博客
  • 博客访问: 109936
  • 博文数量: 50
  • 博客积分: 968
  • 博客等级: 少尉
  • 技术积分: 492
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-17 09:51
文章分类

全部博文(50)

文章存档

2012年(2)

2011年(48)

我的朋友

分类: 嵌入式

2011-05-23 09:54:42

 1. DNW
    学习了linux一段时间后,大多都知道在linux宿主机上可以用minicom   nfs服务器  FTP服务器 乃至U盘等向目标机传我们需要的文件。这几种方法各有各的好处。但是,以上方法都是在目标机已经安装了操作系统或者无操作系统但Uboot支持以上功能(实际上Uboot本身也可以说是一个操作系统了)。但是我们拿到一款没有操作系统的板子时,首先就是要给他装系统。

     在windows下可以使用DNW来传我们但bootloader  内核 以及文件系统很方便。但是在linux有没有类似这样但工具呢?厂家提供但工具包里没有。事实上linux的用USB更简单。下面是一位网络雷人做的linux下的DNW。

这个不需要加载内核模块,省去了编译内核模块的麻烦,不过需要libusb的支持,安装libusb和libusb-dev这两个包就可以了,详见包里面的README
我在qq2440上测了下,烧写kernel时下载速度有250 KB/s,应该比较快了。
http://c8051f320dev.googlecode.com/files/dnw2_linux_latest.tgz

【如果没有安装以上两个包先执行yum安装,我的已经安装。所以结果如下:】
    [root@MyFedora13 下载]# yum install libusb libusb-devel
    已加载插件:presto, priorities, refresh-packagekit
    设置安装进程
   包 libusb-0.1.12-23.fc13.i686 已安装并且是最新版本
   包 libusb-devel-0.1.12-23.fc13.i686 已安装并且是最新版本
   无须任何处理

【下载完成后执行解压命令】
        [root@MyFedora13 下载]# tar -xzvf dnw2_linux_latest.tgz 
【运行tree命令看看里面有什么文件】
       [root@MyFedora13 下载]# tree dnw2
        dnw2
        |-- dnw2.c
        `-- README

0 directories, 3 files
【下面看看README就知道了】
[root@MyFedora13 dnw2]# vim README

Build:
    You need libusb installed to build this tool.
Please install libusb and libusb-dev before building.
    To build this tool, just:

    gcc dnw2.c -o dnw2 -lusb //安装方法

Use:
    Make sure you have root privilege. Use following
command to download a file:

        ./dnw2   //使用方法

BUG?
    Please feel free to report it to hulifox008@163.com.

                               Fox
【按照以上方法安装】
[root@MyFedora13 dnw2]#gcc dnw2.c -o dnw2 -lusb
到此安装完成,运行即可。也可以把这个可执行文件cp到/bin或者/sbin等目录。或者配置以下环境变量等都可以。以方便下次使用时在任意目录下都能找到这个命令。有兴趣的还可以看看别人是怎么实现的。

2.jlink的问题。
之前网上很多人说jlink只能用在windows下,自己买板子的时候那个卖家甚至也是这么对我说的。
  幸亏我一次在 帖子“请教JLINK V7支持Linux下用openOCD吗(http://www.ourdev.cn/bbs /bbs_content.jsp?bbs_sn=3263282&bbs_page_no=1&search_mode=4& search_text=crifan&bbs_id=9999)?”里看到 网友 jordonwu的话 ,顺着他的话,找到了 segger 网站( ),其中Beta software version for Linux 是也!
我在ubuntu下试了下,用起来除了jlnkGDBserver是command界面,其他和 windows版的无异。

发生的问题:按照README的步骤,还是要装libusb,之前dnw安装的时候没装看来还是躲不掉的,欠债总归要还得。没办法下了 源代码进行编译。一路成功,但是运行的时候发生了 如下错误:
./JLinkExe: error while loading shared libraries: libjlinkarm.so.0: cannot open shared object file: No such file or directory。
我一开始以为是 动态加载库没有进去的关系,所以把当前路径也加到 了LD_LIBRARY_PATH这个变量中去,发现还是不行。(参考:http://blog.csdn.net/wwwsq/archive/2006/09/21/1256577.aspx [Linux] 如何让linux加载当前目录的动态库)
因为原来提供的文件 里没有 libjlinkarm.so.0,倒是有 libjlinkarm.so.0.0. 又怀疑是 要做个软连接libjlinkarm.so.0,好像还是不行。
最后网上查了查,按照  帖子里的说法,把后者改名为前者就ok了。 这个网址也是讲这个问题: 

3.KScope安装
windows 上有source insight 。好用啊。最近发现linux也有这样的工具---KScope,简直就是linux上的source insight 。它用的也是基于Cscope引擎来做的,但比同样基于它的chrowser好用很多,要么是我不会用的关系。KScope的用法就不说了,因为和 source insight是一样的。
安装的时候倒是出现了如下错误:
kscope: error while loading shared libraries: libkateinterfaces.so.0: cannot open shared object file: No such file or directory。
怎么办,还是放狗。呵呵。
下载kate_3.5.9.dfsg.1-6_i386.deb。
然后:
$ar x kate_3.5.9.dfsg.1-6_i386.deb
$tar xzf data.tar.gz
$cp usr/lib/libkateinterfaces.so.0.0.0 /usr/local/lib/libkateinterfaces.so.0
$cp usr/lib/libkateutils.so.0 /usr/local/lib/libkateutils.so.0
$ldconfig
不过好像还会出现如下问题
/sbin/ldconfig.real: /usr/lib/libjlinkarm.so.4 不是符号连接

不过Kscope仍能打开了。

阅读(2402) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~