OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » VxWork5.5内核源码安装、编译过程介绍[原创]

共5条 1/1 1 跳转至

VxWork5.5内核源码安装、编译过程介绍[原创]

菜鸟
2003-12-21 06:23:00    评分
VxWork5.5内核源码安装、编译过程介绍 minicore@163.com 注:本文以Tornado2.2 For Pentium源码为例子 版权声明:文章可以转载,但请保留作者姓名,本文作者保留对文章拥有的权利。 第一步: 安装vxWork源代码,根据WindRiver源码安装盘安装指导,将源码安装到Tornado相应目录下。安装后,源码文件在../target/src目录下。注意,有些Tornado安装时就已经带的头文件,源码安装盘中没有包含,所以安装后的源码要和Tornado安装的头文件配合在一起,才构成完整的代码。 源码安装盘一般主要有下面几个目录: arch:与CPU结构相关的部分代码,Tornado2.2包括PPC、I86、ARM、68K、MIPS、SH各种CPU相关部分代码。这部分代码主要是完成CPU初始化、MMU管理、中断处理和底层一些函数部分的代码。 Cplus:vxWork操作系统C++运行支持库的代码 Drv:驱动部分代码 fs:文件系统部分代码,包括CBIO,DOSFS等。 Libc:标准库函数代码 Math:数学库代码 Netinet:网络协议栈部分代码 Netwrs:windRiver网络协议部分代码 Os:操作系统库部分代码 Ostool:操作系统工具部分代码,包括模块加载、调试工具(SPY、Shell)的代码 Posix:posix标准库代码 tffs:TFFS文件系统代码 usb:USB部分代码 util:工具代码,包括压缩、解压部分代码等 wdb:wdb部分代码 wind:wind内核代码 这里只列出了一些主要目录,具体目录内容,根据安装key不同,应该有差异。 第二步: 修改编译规则,源码安装后,在../target/src目录下,有一个makefile文件,这个文件,是源代码编译的make文件,使用这个文件,可以实现对源码的编译工作。 编译前,可以根据自己的需要,更改一下编译的缺省选项,源码编译的缺省规则在../target/h/make/defs.default中定义,在这个文件里面,主要有两个地方需要修改: 1 修改缺省CPU类型,将CPU类型修改如下: CPU=PENTIUM 2 修改缺省使用编译器: TOOL=gnu 修改完这里后,还要根据安装的模块,修改../target/src/Makefile文件,将没有的、不需要编译的模块部分去掉,在这个Makefile文件里,主要修改COMMON_SUBDIRS、DUAL_SUBDIRS,来决定编译的模块。 第三部: 设置好环境信息,可以通过运行../host/x86-win32/bin/torvars.bat来设置相关环境变量。然后回到../target/src目录下,运行make,编译开始。 根据选择模块数量不同,编译时间也有区别,在我的电脑上(AMD 2500+ ,512M RAM),编译除vxfusion、vxmp、vxvmi模块部分代码一共用了53分钟。 第四部: 如果设置正确,编译完成后,在target\lib\pentium\pentium下生成编译后的库文件。如果需要对操作系统部分进行源码调试,可以在编译时,增加-g选项,增加调试信息。 根据以上步骤,我们就可以定制、修改vxWork操作系统,实现内核级的修改、调试。 在大多数环境下,我们可能不需要进行这种工作,但通过学习内核代码,对提高编程水平,了解vxWork操作系统,还是有极大的好处的。 newcore minicore@163.com



关键词: VxWork5.5     内核     源码     安装     编译     过程         

菜鸟
2003-12-21 19:49:00    评分
2楼
风河现在提供了Tornado2.2开发PLATFORM ,里面就包含了内核源码,也可以作为一个产品单独购买。 Tornado2.0中,也有内核源码,是作为一个单独软件包出售的。 具体内容,可以到风河网站上看。

菜鸟
2003-12-22 17:30:00    评分
3楼
我认为无需修改defs.default,只需要在dos下执行: make CPU=PENTIUM TOOL=gnu 应该就可以了,对不对?

菜鸟
2003-12-22 23:01:00    评分
4楼
不错,加精:)

菜鸟
2003-12-23 05:48:00    评分
5楼
gem2000说的方法也可以,我是为了方便,直接修改make文件。

共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]