SDK的编译
1、假定Tornado的安装目录在${TORNADO}如D:\Tornado2.2
BCMSDK安装在${BCMSDK}如D:\epon\mywork\
2、建立Perl
在${TORNADO}\host\x86-win32新建目录perl
解压Perl4DosBuild.zip到Tornado安装目录${TORNADO}\host\x86-win32\perl下
3、建立setenv.bat
如果我们编译的TARGET为vxworks-bmw,则在${BCMSDK}\sdk-5.4.0\systems\vxworks\bmw下建立环境变量的批处理文件如setenv.bat,其内容如下:
set WIND_BASE=${TORNADO}
set WIND_HOST_TYPE=x86-win32
set PERL_BASE=${TORNADO}\host\x86-win32\perl
set
PATH=%WIND_BASE%\host\%WIND_HOST_TYPE%\bin;%WIND_BASE%\host\%WIND_H OST_TYPE%\lib\gcc-lib\powerpc-wrs-vxworks\gcc-2.96;%PERL_BASE%\bin
set PROJECT_BASE=${BCMSDK}
set PROJECT_BASE_NO_DRIVE_NAME=${BCMSDK} #注1
set SDK=d:\\epon\\mywork\\sdk-5.4.0 #注2
set SDK_NO_DRIVE_NAME=%PROJECT_BASE_NO_DRIVE_NAME%\sdk-5.4.0
set HOSTTYPE=Windows2000PC
set TARGET=vxworks-bmw
●注1:去掉${BCMSDK}前面的“D:”
●注2:d:\epon\mywork\sdk-5.4.0是BCM的SDK目录,但set
SDK=d:\\epon\\mywork\\sdk-5.4.0中间一定要打两个“\\”
●注3:“set WIND_BASE=d:/tornado2.2”中的斜杠是“/”,而后面的斜杠一般都是“\”下面是一个在Tornado安装目录${TORNADO}=D:\Tornado2.2和BCMSDK的目录${BCMSDK}= D:\epon\mywork\情况下的完整的一个setenv.bat文件:
set WIND_BASE=d:/tornado2.2
set WIND_HOST_TYPE=x86-win32
set PERL_BASE=d:\Tornado2.2\host\x86-win32\perl
set
PATH=%WIND_BASE%\host\%WIND_HOST_TYPE%\bin;%WIND_BASE%\host\%WIND_H OST_TYPE%\lib\gcc-lib\powerpc-wrs-vxworks\gcc-2.96;%PERL_BASE%\bin
set PROJECT_BASE=D:\epon\mywork
set PROJECT_BASE_NO_DRIVE_NAME=\epon\mywork
set SDK=d:\\epon\\mywork\\sdk-5.4.0
set SDK_NO_DRIVE_NAME=%PROJECT_BASE_NO_DRIVE_NAME%\sdk-5.4.0
set HOSTTYPE=Windows2000PC
set TARGET=vxworks-bmw
4、修改Makefile.vxworks-common
#cchchg
#BCM_CFLAGS = -Wall -Werror
BCM_CFLAGS = -Wall
#cchchgend
即把-Werror去掉
5、建立自己的Make.local
复制Make.local.template到Make.local,然后修改Make.local里面的内容
●打开硬件出错时的错误提示#CFGFLAGS += -DDEBUG_STARTUP="DK_ERR",去
掉#号
●#DISPATCH_LIST = RPC ESW ASYNC,改为DISPA TCH_LIST = ESW
●把原来的
#FEATURE_LIST=ATPTRANS_SOCKET BCMX_DIAG L3 I2C BCMX
MEM_SCAN EDITLINE TCL ASE \
# CUSTOMER TELNET DRIVERS CHASSIS TEST ACL RCPU
改为:
FEATURE_LIST=ATPTRANS_SOCKET BCMX_DIAG L3 I2C BCMX
MEM_SCAN EDITLINE ASE \
CUSTOMER TELNET DRIVERS CHASSIS TEST ACL
●改为部分BCM芯片支持#BCM_PTL_SPT = 1,去掉#号
●打开支持的芯片如把#BCM_5690_A0 = 1和#BCM_56504_A0 = 1去掉#号
备注:做不做本条,都不影响编译。
6、启动cmd
进入编译目录
运行cd ${BCMSDK}\sdk-5.4.0\systems\vxworks\bmw
运行setenv
运行make
7、运行的结果
运行的结果保存在D:\epon\mywork\sdk-5.4.0\build\vxworks-bmw下;