2017-03-06 74 views
0

我正在尝试生成与另一个内核工作台项目相同的VxWorks 6.9.4.8内核配置。 Workbench 3.3.6只允许GUI配置。VxWorks Workbench内核配置GUI的输出文件是什么

是否有一个底层内核配置文件,由GUI生成,可以替换?

使用的工作台GUI更新内核配置之后,我看到了下面的文件已更改:

  • linkSyms.c,
  • prjComps.h,
  • prjConfig.c内,并
  • prjParams.h

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

+1

随着问题的帖子的作者,你不需要使用注释的比较以提供其他信息:[edit]改为问题帖子。 – Tsyvarev

回答

1

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

基于其他内核配置创建新内核配置的第一步是使用GUI配置器,并在prjComps.h中添加缺少的组件,最好使用像'beyond compare'之类的diff工具,并通过添加/删除组件。切记不要直接编辑此文件,而只能通过GUI配置器编辑。当该工具计算相关组件并添加/删除它们时。 第二步是如上创建新的prjParams.h。

工作台实际上允许使用命令行通过vxworks 6.9中的vxprj工具编辑内核配置(此工具已被vxworks 7中的“wrtool”所取代),您可以右键单击Image项目并选择“打开风向River vxWorks 6.9 Developement Shell“。

如果您想为例如Telnet客户端(INCLUDE_TELNET_CLIENT) ,可以使用下面的命令

vxprj component add INCLUDE_TELNET_CLIENT 

要删除组件

vxprj component remove INCLUDE_TELNET_CLIENT 

更多vxprj的工具,你可以看一下在工作台本身的文档。

0

感谢您的线索@endTunnel。我查看了那个文件,发现当我保存我的GUI选择时,有几个文件会被修改。

  1. prjComps.h - 在内核构建
  2. prjParams.h包含(#include)的所有组成部分 - 对于已启用的组件设置
  3. prjConfig.c内额外的参数 - 配置和初始化呼吁包括每个模块。

'linkSyms.c'也被修改。不确定如何使用它。

我现在可以使用diff比较内核配置,甚至可能复制一个配置(还没有尝试过)。

1

项目配置保存在内核项目目录中的少量文件中。

它们是:

  1. 的.project
  2. .cproject
  3. .wrproject
  4. projectname.wpj

文件如prjComps.h,prjParams.h prjConfig.c内都是由配置工具生成的,但它们本身不是配置文件。相反,这是生成的C代码,其中包含所选组件的列表。

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

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

明确包含的组件是您在内核配置GUI中手动选择的组件,隐含包含的组件是随后包含的用于满足依赖关系的组件。

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

。项目等配置文件是大而复杂,但一个体面的比较工具,如BeyondCompare可以使项目目录很容易