VxWorks POSIX实现

时间:2014-02-07 21:07:54

标签: posix vxworks

非常适合编程/软件的初学者。我试图将一些为linux编写的代码移植到我的vxworks项目中。

当包含 pthread.h 时,它似乎包含来自C:\WindRiver\vxworks-6.8\target\h的标题但是我注意到C:\WindRiver\vxworks-6.8\target\usr\h中有另一个标题稍有不同。

差异的一个例子是其中一个不存在函数pthread_mutexattr_settype。根据v6.8文档,pthread_mutexattr_settype是我应该有权访问的函数。

也许我设置错误的路径?我是否需要为我的项目做一些特别的事情才能知道在哪里看?当我将构建路径更新为 usr 文件夹时...当我右键单击并打开声明时,它为我提供了两个选项(两个位置)。是的,我的构建路径中只有一个位置。

1 个答案:

答案 0 :(得分:4)

阅读文档总是很好的第一步。

只有在使用实时进程(RTP)项目时,VxWorks才符合POSIX PSE5.2。 这就是/ usr / ...标头指向的内容。

如果您正在构建内核模块(DKM),那么某些POSIX接口可用,但显然不是您想要的端口。

因此,使用RTP是您想要移植代码。

请参阅“VxWorks应用程序编程人员指南”。 3.4.2节(VxWorks 6.9)明确指出目标/ usr / h是系统头文件用于RTP的位置。并提醒您不要在target / h中引用头文件。

请参阅第9节关于POSIX支持。