VxWorks Workbench内核配置GUI的输出文件是什么

时间:2017-03-06 18:35:07

标签: configuration kernel vxworks toolchain

我正在尝试生成与另一个内核工作台项目相同的VxWorks 6.9.4.8内核配置。 Workbench 3.3.6仅允许GUI配置。

是否有由GUI生成的基础内核配置文件可以替换?

使用Workbench GUI更新内核配置后,我看到以下文件已更改:

  • linkSyms.c,
  • prjComps.h,
  • prjConfig.c和
  • prjParams.h

我想我的问题是,哪一个,如果有任何唯一标识内核的内容?

3 个答案:

答案 0 :(得分:1)

prjComps.h将包含您在内核配置GUI中选择的所有组件名称。

基于其他内核配置创建新内核配置的第一步是使用GUI配置器并在prjComps.h中添加缺少的组件,更好地使用一些差异工具,例如“超越比较”,并继续减少添加/删除组件的差异。切记不要直接编辑此文件,而只能通过GUI配置器编辑。该工具计算从属组件并添加/删除它们。 第二步是按上面的步骤创建新的prjParams.h。

Workbench实际上允许使用命令行通过vxworks 6.9中的vxprj工具编辑内核配置(此工具已被" wrtool"在vxworks 7中替换),您可以右键单击Image项目,选择了开放风河vxWorks 6.9开发Shell'。

如果您想为例如添加组件telnet客户端(INCLUDE_TELNET_CLIENT) ,您可以使用以下命令

 vxprj component add INCLUDE_TELNET_CLIENT 

删除组件

 vxprj component remove INCLUDE_TELNET_CLIENT 

有关vxprj工具的更多信息,您可以在工作台中查找文档。

答案 1 :(得分:1)

项目配置保存在内核项目目录中的一些文件中。

这些是:

  1. 的.project
  2. .cproject
  3. .wrproject
  4. projectname.wpj
  5. prjComps.h,prjParams.h prjConfig.c等文件都是由配置工具生成的,但这些文件本身并不是配置文件。相反,这是生成的C代码,其中包含所选组件的列表。

    我相信,当您重建项目时,也会重新生成这些文件。 因此,这些并不是您感兴趣的权威来源。

    为此,您需要查看项目文件。就组件列表而言,最有趣的是.wpj文件,其中包含显式和隐式包含的组件列表。

    显式包含的组件是您在内核配置GUI中手动选择的组件,隐式包含的组件是为满足依赖项而包含的组件。

    这种区别有时会使比较内核配置变得棘手,然后您可能希望回退生成的文件,例如prjComps.h,但是您应该始终记住这是配置的表示,而不是源。

    .project等配置文件既庞大又复杂,但是一个不错的差异工具,比如BeyondCompare可以很容易地比较项目目录

答案 2 :(得分:0)

感谢线索,@ endTunnel。我查看了该文件,发现在保存GUI选择时会修改一些文件。

  1. prjComps.h - 内核版本中包含的所有组件
  2. prjParams.h - 为启用的组件设置的附加参数
  3. prjConfig.c - 包含每个模块的配置和初始化调用。
  4. 'linkSyms.c'也会被修改。不知道如何使用它。

    我现在可以使用diff来比较内核配置,甚至可能复制配置(尚未尝试过)。