VXWorks 向头文件添加函数

VXWorks adding functions to header files

我正在尝试将我自己的函数添加到 jobQueueLib 并逐行执行该函数或其中的任何函数(它们都是 EXTERN)。

如果我不放置#include ,则通过 .h 函数调用将直接进入汇编,它指的是 vxworks-6.9/target/h/wrn/coreip/jobQueueLib.h

添加了 include 后,进入同一个现有函数会导致分段冲突。

更新: 我的问题是 C、可下载内核模块项目构建或组件相关(即使我检查它是 VIP 中包含的组件)——因为我在编译时收到模块符号无法解析的警告:jobQueueTerminate,或对该 .h 文件中任何函数的任何其他调用(它们都是 EXTERNS)。

检查已删除的 include 语句,我仍然无法从中调用任何函数 vxworks-6.9/target/h/wrn/coreip/jobQueueLib.h 所以我认为这是一个项目级别的包含问题。这是我的 DKM 项目包括(最后一个是多余的,但我没有找到删除它的方法):

如何获取要解析的符号?

终于得到 运行 带有您自己修改的源代码的 DKM 的流程:

根据需要在任何 C 文件中进行更改 -> 创建一个 VSB 并使用包含的源代码构建它 -> 创建一个基于此 VSB 的 VIP 并构建它 -> 使用其中一个输出的 VXWorks 二进制文件VIP 和“连接到目标模拟器”-> 从 VIP 引用您的 DKM(DKM 将是 VIP 的子项目)-> 最后,在之前建立的目标连接上执行 DKM!

P.S。我正在使用 SIMLINUX 做 VIP 构建是 LINUX 我使用 VXWorks Linux 构建 VIP 的二进制输出。