clone() 函数隐式声明

标签 c linux clone

我正在使用函数 clone()创建线程。问题是我在编译期间遇到此错误:

implicit declaration of function ‘clone’ [-Wimplicit-function-declaration]

我包括了 <linux/sched.h> .可能是什么问题?

最佳答案

在源文件的顶部添加以下行

#define _GNU_SOURCE  
#include <linux/sched.h>        /* or #include <sched.h> */

_GNU_SOURCE是一个功能测试宏

功能测试宏允许程序员在编译程序时控制系统头文件公开的定义。为了有效,必须在包含任何头文件之前定义功能测试宏。这可以在编译命令 ( cc -DMACRO=value ) 或 #define 中完成。 -ing #include 之前源代码中的宏-ing 任何 header 。

关于clone() 函数隐式声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23579354/

相关文章:

c - 试图用C制作帐篷和树木游戏

使用 afl-gcc 编译 - 未检测到仪器

c - “%d”需要类型为 'int' 的参数,但参数 2 的类型为 'long unsigned int' [-Wformat=]

c - 流的位置指示器,使用 fwrite

linux - 从 ioremap 返回的虚拟地址上的 DMA

linux - 如何在 Debian 中将简单的 Go 服务器作为守护进程运行?

c - curl/curl.h、libcurl、libcurl4-openssl-dev、libcurl4-nss-dev 库之间的区别?

javascript - 如何在没有引用的情况下复制 Javascript 错误?

gdb - 可以在GDB中运行,但直接运行时出现段错误

javascript - 追加();单击按钮后jquery添加div