原创 移植goAhead 到windriver6.x上的步骤

2008-6-24 16:50 1999 3 3 分类: MCU/ 嵌入式


EMAIL:renfamilyxh#gmail.com


Project搭建



1.workbench建一个download kernel mdoule progjectbuild tool 可以选择linker或者librarian;



2.将文件导入,不要导入文件如下:



websSSL.c



websSSL.h



webcomp.c



/vxworks/vxcgitst.c



/web/cgi-bin/cgitest.c



3.projectproperties对话框中的build macros tab中的CC_ARCH_SPEC中加入-DWEBS -DUEMF -DVXWORKS -DOS=VXWORKS,如下两个宏可选



-DUSER_MANAGEMENT_SUPPORT

-DDIGEST_ACCESS_SUPPORT



4.此时可以build成功。



 



文件系统搭建



main.c文件中:



#define                         ROOT_DIR           T("/ata0/webs")



#define                         ROOT_DIR           T("/tffs0/webs")



---------------------------------------------------------------------------



static char_t           *rootWeb = T("web");



所以将web整个文件夹复制到/tffs0/webs目录下



----------------------------------------------------------------------------



websSetDefaultPage(T("default.asp"));这个函数用来设首界面



----------------------------------------------------------------------------



defaultTraceHandler,这个函数用来打出调试信息



-------------------------------------------------------------------------------



emfdb.c文件



dbOpen函数中:



basicProdDir =
T("/tffs0/webs")
;  



 



或者如下方案不过还没有验证



static char_t    *basicProdDir = NULL;



static char_t    *basicProdDir = T("/tffs0/webs");



 


workbench



选中webslibrenxh
project



然后在菜单projectàadd as project referenceà选择vxWorks Image project



此时webslibrenxh
project
就会成为vxWorks
Image project
的子项目,



然后,在usrAppInit.c中添加如下代码:



#include



 



IMPORT int websvxmain(int argc, char
**argv);



taskSpawn ("webs", 100, 0, 20000,
(FUNCPTR)websvxmain, 0,0,0,0,0,0,0,0,0,0);



 



编译即可。



附加:



tornado2.2



首先在bootload
project
项目中将生成的库文件webslibrenxh.a加入,



LIB_EXTRA      = webslibrenxh.a



然后,在应用程序中加入如下代码:



{



extern int websvxmain(int argc, char
**argv);



taskSpawn ("webs", 100, 0, 20000, (FUNCPTR)websvxmain,
0,0,0,0,0,0,0,0,0,0);



}



堆栈大小20000,如果设置小了,就会出现问题





PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
3
关闭 站长推荐上一条 /4 下一条