在 Debian 中 #include <threads.h> 之后,GCC 在 C11 模式下未定义对 thrd_create() 的引用

GCC undefined reference to thrd_create() in C11 mode after #include <threads.h> in Debian

我正在尝试编译一个我已经能够在其他几个 Debian 环境中编译的程序,使用 C11 <threads.h> 库在相对较新的 Debian Bullseye 上使用“gcc (Debian 10.2.1-6) 10.2.1 20210110" 安装

使用命令

gcc -o <progname> -O3 -Wall -Wextra -std=c11 -lpthread <sourcefile>

并且我收到一串链接器错误,形式为 undefined reference to 'mtx_unlock' 以及 mtx_lock mtx_init thrd_create

但我没有收到 threads.h 文件不存在的错误消息。我尝试从编译命令中删除 -lpthread 参数,但这没有任何改变。

出了什么问题?

正确的命令行参数似乎是 -pthread 而没有 l