C 编译io时遇到问题

C 编译io时遇到问题,c,linux,io-uring,C,Linux,Io Uring,我一直在阅读,我想尝试实际的系统调用(io_uring_setup,io_uring_enter)以检查我的理解,但我无法编译以下简单程序: #include <kernel/io_uring.h> #include <stdint.h> int main() { struct io_uring_params p; int ring = io_uring_setup((__u32) 512, &p); return 0; } #包括 #

我一直在阅读,我想尝试实际的系统调用(io_uring_setup,io_uring_enter)以检查我的理解,但我无法编译以下简单程序:

#include <kernel/io_uring.h>
#include <stdint.h>

int main() {
    struct io_uring_params p;
    int ring = io_uring_setup((__u32) 512, &p);
    return 0;
}
#包括
#包括
int main(){
结构输入参数p;
int-ring=io设置(((uuuuu32)512,&p);
返回0;
}

我得到io设置函数的隐式声明错误。手册页建议只包含linux/io uring.h文件,但当我查看源代码时,我看不到io uring设置的定义。

这可能与
futex
syscall的情况相同:也就是说,必须使用
syscall
直接调用它。这样做的目的是防止用户直接尝试使用此功能,除非他们真的知道自己在做什么。事实上:谢谢,我能够使用_sys_io_uring_设置使其正常工作。我正在liburing/的examples/目录中工作,我所要做的就是将src/syscall.h复制到src/include/和文件中的“#include syscall.h”。