2

我正在尝试在以下位置添加一个新的系统调用:/usr/src/servers/pm/exec.c

我写了一个非常简单的方法exec.c

void parseBlack(char * value){
    char * ptr = strtok(values, ";");

    }

但是,当我尝试编译它时出现错误:

In function parseBlac, undefined reference to "strtok".

我已经添加了#include <string.h>

真奇怪。我检查了 minix api。它有这个方法:

/minix/include/string.h( http://code.metager.de/source/xref/minix/include/string.h )

这是一个屏幕截图:

在此处输入图像描述

4

1 回答 1

2

MINIX 中的服务器不与完整的、臃肿的和详细的链接libc.a,而是与 C 库的有限版本(可能libminc在您的情况下)链接。strtok在您使用的版本中,显然不被认为是该受限库的一部分。要么移动strtok.c到那个库(编辑libminc/Makefile然后清理和重建),要么显式链接strtok.o.

于 2015-03-21T10:56:12.730 回答