新闻  |   论坛  |   博客  |   在线研讨会
串口加载vxworks的常见问题,请高手指点一下
谜谜 | 2007-12-18 18:18:18    阅读:3489   发布文章

我的目标机是一个etx板子,想用串口加载vxwork内核,主机是pcPentium,在配置config文件时,我是这样修改的(我只有一个串口,所以定义都是com1):

#define INCLUDE_WDB_TTY_TEST
#undef CONSOLE_TTY
#define CONSOLE_TTY         NONE
#undef WDB_TTY_CHANNEL
#define WDB_TTY_CHANNEL     0
#undef WDB_COMM_TYPE
#define WDB_COMM_TYPE  WDB_COMM_SERIAL
#undef WDB_TTY_DEV_NAME
#define WDB_TTY_DEV_NAME    "/tyCo/0"
#undef  WDB_TTY_BAUD
#define WDB_TTY_BAUD    38400

#define INCLUDE_TSFS_BOOT_VIO_CONSOLE
#define INCLUDE_TSFS_BOOT    有问题
#undef  INCLUDE_WDB_TSFS
#define  INCLUDE_WDB_TSFS

 

#define DEFAULT_BOOT_LINE \
 "tsfs(0,0)host:vxWorks h=192.168.1.1 e=192.168.1.2 u=target pw=target "


在这样配置config文件后,我在bootrom_uncmp操作的时候,就出现了问题
编译窗口出现:
ccpentium -c -mcpu=pentium -march=pentium -ansi  -O2 -fvolatile -nostdlib -fno-builtin -fn
o-defer-pop -Wall -I\h   -I. -ID:\Tornado2.2\target\config\all -ID:\Tornado2.2\target\h -I
D:\Tornado2.2\target\src\config -ID:\Tornado2.2\target\src\drv -DCPU=PENTIUM -DTOOL_FAMILY
=gnu -DTOOL=gnu     -o version.o D:\Tornado2.2\target\config\all\version.c
ldpentium -X -N  -e romInit \
    -Ttext 00108000  -o bootrom_uncmp romInit.o bootInit_uncmp.o version.o \
    bootConfig.o sysALib.o sysLib.o   --start-group  -LD:\Tornado2.2\target\lib\pentium\PE
NTIUM\gnu -LD:\Tornado2.2\target\lib\pentium\PENTIUM\common \
        -lcplus  -lgnucplus  -lvxcom  -larch  -lcommoncc  -ldrv  -lgcc  -lnet  -los  -lrpc
  -lwdb  -lwind  -lwindview D:\Tornado2.2\target\lib\libPENTIUMgnuvx.a --end-group  -T D:\
Tornado2.2\target\h\tool\gnu\ldscripts\link.RAM
D:\Tornado2.2\target\lib\pentium\PENTIUM\common\libwdb.a(wdbDbgLib.o): In function `wdbDbg
BpRemoveAll':
wdbDbgLib.o(.text+0x18c): undefined reference to `usrBreakpointSet'
D:\Tornado2.2\target\lib\pentium\PENTIUM\common\libwdb.a(wdbDbgLib.o): In function `wdbDbg
BpRemove':
wdbDbgLib.o(.text+0x1e6): undefined reference to `usrBreakpointSet'
make.exe: *** [bootrom_uncmp] Error 0x1

Done.

bootrom_uncmp无法生成成功,但是去掉 #define INCLUDE_TSFS_BOOT这句话bootrom_uncmp就可以成功,不知道什么原因。


在配置target server时,
    在Target Server Properties  选项是 Back End,Available Back 选项选的是wdbserial
然后在Target Server Properties 中选择 Core File and Symbols ,设置File 为vxworks内核所在的位置d:\tornando2.2\target\proj\project0\vxworks

下面选择all Symbols 和Synchronize Target/Host Symbol Tab 让主机和目标机的符号表同步


在下面Target Name/IP Address 由于是串口调试,我填写的是target (目标机的名称)

但是当我启动目标机加载的时候
 Log Console 出现了这样的提示:
 tgtsvr (target@host): Thu Dec 18 17:08:25 2003
    Checking License ...OK
    Connecting to target agent...
然后就出现最常见的错误  rpccore backend client Timed out failed 


敬请高手帮我看看这个大家都知道的常见错误,告诉我怎么解决

参与讨论
登录后参与讨论
qingcai [ 匿名]  2008-10-12 21:22:30 

qingcai [ 匿名]  2008-10-09 12:52:45 

推荐文章
最近访客