gpt4 book ai didi

c - Linux gcc 和线程在一起

转载 作者:太空宇宙 更新时间:2023-11-04 12:48:53 26 4
gpt4 key购买 nike

我似乎陷入了第 22 条军规。我的程序使用线程和信号量,所以我包含了 <semaphore.h>但我也想用 struct timespec所以我包括了<time.h> .

看来我需要添加编译标志 -C99 以便定义我的信号量调用(否则我会收到未定义的编译警告,例如 sem_post())。但是当我定义 C99 时,struct timespec不再定义!

我需要设置什么定义或编译器标志才能使用 struct timespec和功能,如 clock_gettime() , 定义 CLOCK_REALTIME , sem_timedwait()连同 sem_post() , sem_destroy()等等?

我还没有进入链接阶段。这是一个编译时错误。

使用 gcc 4.4.7。

谢谢,迈克

最佳答案

对于 sem_post() 等,您不需要 -std=c99 - 这些是 POSIX 函数。

对于 clock_gettime() 等和 sem_post() 等,您唯一需要的命令行参数是 -lrt

关于c - Linux gcc <time.h> 和线程在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37868679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com