要使用glibc构建c11线程程序,我仍然需要与-lpthread链接,为什么?Glibc2.28声称支持c11线程,但是为什么我仍然需要pthread线程?
但是,musl可以在没有pthread线程的情况下构建c11线程。
发布于 2020-08-12 14:38:05
是的,glibc的C11线程实现正在使用底层的pthread库,这就是为什么它需要链接pthread库的原因。在glibc中,pthread是(一直是)一个单独的库--因此需要链接它。
而在musl库中,线程实现本身就是主C库的一部分,因此无论你是使用pthread还是C11线程,都不需要链接任何线程库。另请参见https://www.openwall.com/lists/musl/2012/07/25/3。
https://stackoverflow.com/questions/63370131
复制相似问题