标题:
linux 调试之lrz的移植与一些说明
[打印本页]
作者:
niuniu
时间:
2015-4-5 22:54
标题:
linux 调试之lrz的移植与一些说明
开发板:
RT5350
编译器:
mipsel-linux-gcc
(
如果是
arm
平台和
arm_linux
的话,请参照修改即可
)
1. 获取源码:lrzsz-0.12.20.tar.gz
2.
解压:
tar–xvf lrzsz-0.12.20.tar.gz
3.
添加配置参数:
vi mipsel-linux.cache (
默认下没有这个文件,因为新建这个文件并打开,添加以下内容
)
添加内容:
ac_cv_prog_CC=${ac_cv_prog_CC=/opt/buildroot-gcc342/bin/mipsel-linux-gcc'}
备注一下:
/opt/buildroot-gcc342/bin
是
mipse-linux
编译器的绝对路径。
4
,配置
./configure –cache-file=mipsel-linux.cach –prefix=/usr/local/lrz
说明一下,执行这个配置操作后,
mipsel-linux.cache
内容会有所增加,
makefie
里的
CC
会指向第三步中配置的编译器。
如果没有看到
CC
和
CPP
这两条语句没有指向指定的编译器,说明没有配置成功,需要重新操作一遍,确保操作无误。
5
编译
make
make install
执行这两行后,就会生成
lrz
等可执行文件。会把这些执行文件存放到
/usr/local/lrz
里。
这就是配置时
—prefix
这个参数的作用了。
然后把这几个文件拷贝的要烧写的文件系统中,
烧写,启动系统。
可以看到这几个文件已经成功烧录到板子去了。
由于这几个文件没有放到
bin
目录,所以要执行这个文件的时候,需要这样执行。
chmod 777 lrz (
该指令是修改权限,有些平台不一定需要
)
./lrz
执行这个程序。
(如果是拷贝到了
bin
目录里,可直接
lrz
执行)
已成功弹出对话框,并选择要下载的文件
下载完成,提示有下载速度。不过,源码默认的波特率是
2400
,如果要提高速度,可修改源码目录下
/src/lrz/c.
大概
69
行。
unsigned Baudrate=2400;
改为:
unsigned Baudrate=57600;
(当然,改多少视自己口味吧)
保存重新编译,下载,重启。
当然,事实证明,修改波特率效果不是很明显,因为本来使用
lrz
通过串口传输文件到
linux
下是比较慢的,不过,
lrz
还是比较方便的,适合于调试
linux
的程序。一般编写的
linux
的程序也就几十
k
到几百
K
左右,
lrz
直接下载就
OK
了,而且可以在
linux
任何目录下执行
lrz
便可把文件下载到该目录下。
lrz
辅助调试还是非常方便的。
最后建议编译的时候,还是选择静态编译。虽然静态编译出来的可执行文件会稍微大一点点,不过,可以避免因系统缺少一个库文件而不能正常使用。
当然采用静态编译的好处是可以在相同平台的不同系统下运行。当然,如果是在
mipsel
下的编译了,要在
arm
平台上使用一般是不可能的了。但至少可以在
mipsel
下可以正常使用,也许你会问这样做的必要性,举个例子吧。
同学
A
和同学
B
的电脑都是
win 7
系统的。
同学
A
用
VC6
制作了个软件可以在自己的电脑上运行,但是把可执行文件拷贝到同学
B
的电脑就不能运行了,提示说缺少什么
dll
文件之类的。原来是同学
B
的电脑没有装
VC
。那怎么办呢。同学
A
要想别人用他的软件,不可能叫所有人都装
VC
吧,也不可能说缺少
dll
就要补上,不停地补
dll
也不是个办法的。
所以,只要同学
A
要编译的时候,使用静态编译,可以发布版本的程序,这样拷贝给
B
同学的时候就可以运行。相信使用过
VC
的不少同学能够理解这一点的。
回到我们的话题,要想静态编译
lrz,
可以修改第三步就可以了。
vi mipsel-linux.cache (
默认下没有这个文件,因为新建这个文件并打开,添加以下内容
)
添加内容:
ac_cv_prog_CC=${ac_cv_prog_CC=/opt/buildroot-gcc342/bin/mipsel-linux-gcc-static
'}
后面步骤相同,发现
makefile
文件会变为:
同时,
mipsel-linux.cache
文件的内容被修改如下:
说明已成功设置为静态编译。
剩下的请参考前面的操作。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1