“process_vm_readv的隐式声明”,但我包括<sys uio.h =“”> </sys>

时间:2014-05-05 16:54:36

标签: c gcc ubuntu-13.10

我正在尝试使用GCC编译一些代码。在我的代码中,我调用了process_vm_readv()和process_vm_writev()(这些是非标准的Linux扩展,请参见此处的man-page:http://linux.die.net/man/2/process_vm_writev)。

坚持这个人,我把我的.c文件包括在内,但GCC吐出来了:

  

警告:隐式声明函数'process_vm_writev'

我不确定如何解决这个问题......像printf和strlen这样的标准libc函数编译得很好。

1 个答案:

答案 0 :(得分:3)

这些功能仅在启用GNU扩展时可用。那就是#define _GNU_SOURCE生效了(这个事实可能应该记录在他的手册页中)

所以你需要做

#define _GNU_SOURCE
#include <sys/uio.h>