我正在试验Mac OS X 10.6.5内核库。具体来说,我正在尝试对crget()函数进行非常简单的调用(有关函数原型,请参见:http://fxr.watson.org/fxr/source/sys/ucred.h?v=DFBSD#L101)。

该代码仅是:

#include <sys/param.h>
#include <sys/ucred.h>

// Main().

int main (void) {

   // Return a ucred struct from kernel for this process.
   struct ucred *processCredentials = crget();

   // Rest of code...

   return 0;
}


XCode报告:

体系结构i386的未定义符号:
  “ _crget”,引用自:
      _main在main.o中
ld:找不到体系结构i386的符号

有人可以告诉我我想念什么吗?

谢谢,

史考特

最佳答案

the documentation


  注意:使用基本用户凭证[sic]的功能不会导出到内核外部,因此,内核扩展通常不可用。


因此,除非您适当地修改了内核,或者使用了严重的骇客行为,否则您将无法与之链接。

08-19 06:38