第二章 VxWorks开发环境搭建:Workbench安装、Wind River Linux安装、目标机与主机连接配置、License激活

好,咱们正式开始搭建环境。这一章我把它叫做「磨刀不误砍柴工」。

很多新手一上来就急着写代码,结果环境没配好,折腾半天连个Hello World都跑不起来。我当年刚入行时也犯过这毛病,后来被一个老工程师拉着,老老实实把环境搭了一遍,才明白这步有多重要。

2.1 Workbench安装——IDE的选型与版本

Workbench是VxWorks的官方IDE,基于Eclipse。说白了,它就是你的主战场。

版本选择建议:

  • VxWorks 6.x 对应 Workbench 3.x
  • VxWorks 7 对应 Workbench 4.x 或 Wind River Studio

我个人习惯用Workbench 4.6,稳定,坑少。

安装步骤其实不复杂,但有几个细节我得提醒你:

  1. 路径不要有中文——这老生常谈了,但我见过太多人栽在这上面。
  2. 关闭杀毒软件——安装过程中会写注册表、解压文件,杀毒软件一拦,你就等着报错吧。
  3. 选择完整安装——别图省空间选最小安装,后面缺组件你会哭的。

我的小技巧:安装完成后,先别急着打开。去安装目录下找到 workbench.ini,把 -Xmx512m 改成 -Xmx1024m。Workbench吃内存,默认512M不够用,尤其是你同时开多个工程的时候。

2.2 Wind River Linux安装——为什么需要它?

你可能会问:做VxWorks开发,装Linux干嘛?

嗯,这个问题我当年也问过。其实Wind River Linux主要用来做两件事:

  • 作为开发主机(尤其是你的目标机是Linux架构时)
  • 用来编译VxWorks的某些组件(比如一些网络协议栈)

安装Wind River Linux,我建议用虚拟机。为什么?因为它的安装包很大,而且对硬件有要求。直接装物理机上,万一搞崩了系统,你连后悔药都没得吃。

注意:Wind River Linux 和 Workbench 的版本要匹配。比如 Workbench 4.6 对应 Wind River Linux 7 或 8。版本不对,连不上目标机。

安装过程大致如下:

  1. 下载ISO镜像(大概4-5GB)
  2. 创建虚拟机,分配至少4GB内存、50GB硬盘
  3. 安装时选择「Developer Workstation」模式
  4. 设置root密码,创建普通用户

我记得第一次装的时候,卡在「网络配置」那一步。后来发现是虚拟机的网卡模式没选对——要用桥接模式,别用NAT。

2.3 目标机与主机连接配置——打通通信链路

环境装好了,接下来就是让主机和目标机能「说上话」。

连接方式主要有三种:

连接方式 适用场景 速度 我的评价
串口 调试初期、Bootrom阶段 慢(115200bps) 稳定,但慢得让人着急
以太网 正常开发、下载镜像 快(100Mbps+) 首选,但需要先配好IP
USB 部分开发板支持 中等 方便,但驱动容易出问题

我个人最常用的是以太网。配置步骤:

  1. 目标机设置固定IP(比如192.168.1.100)
  2. 主机设置同一网段(比如192.168.1.101)
  3. 用网线直连,或者通过交换机
  4. 在Workbench中配置Target Server,指向目标机IP

避坑指南:我曾经遇到过一个问题——目标机ping不通主机。查了半天,发现是防火墙把ICMP包给拦了。关掉Windows防火墙,立马通了。所以,如果你连不上,先关防火墙试试。

2.4 License激活——别让版权卡住你

VxWorks是商业软件,没有License,你连IDE都打不开。

License激活方式有两种:

  • 在线激活——联网后输入License文件,自动激活
  • 离线激活——生成机器码,发给Wind River,拿回激活码

我建议用在线激活,省事。但如果你在涉密环境或者内网开发,那就只能离线了。

一个小经验:License文件通常是一个 .lic 文件,里面包含了你的MAC地址信息。如果你换了网卡,License就失效了。所以,别随便换网卡,或者提前申请浮动License。

激活步骤:

  1. 打开Workbench,点击 Help → Wind River License Management
  2. 选择「Install License」
  3. 浏览到你的 .lic 文件
  4. 点击完成,重启Workbench

嗯,这里要注意:有时候激活成功了,但Workbench还是提示License无效。别慌,去 C:\Users\你的用户名\.windriver 目录下,把旧的License缓存删掉,重新激活一次就好了。

2.5 环境验证——跑一个Hello World

所有配置都搞定了,怎么知道环境是不是真的搭好了?

很简单,创建一个最简单的VxWorks工程,写个Hello World,下载到目标机上跑一下。

#include <stdio.h>

void hello(void)
{
    printf("Hello, VxWorks!\n");
}

在Workbench中:

  • 新建一个VxWorks Image Project
  • 添加这个源文件
  • 编译,生成镜像
  • 通过Target Server下载到目标机
  • 在Shell中调用 hello()

如果看到终端打印出「Hello, VxWorks!」,恭喜你,环境搭建成功了。

最后提醒一句:环境搭建是基础中的基础。别嫌麻烦,每一步都走扎实了,后面写代码才能顺风顺水。我见过太多人因为环境问题浪费了一整天,结果发现只是IP配错了。

好,这一章就到这儿。下一章我们聊聊VxWorks的启动流程——从Bootrom到内核初始化,每一步都藏着不少门道。