mingw环境下,静态链接pthread库的方法

本文详细阐述了解决静态连接pthread库的问题,包括编译时使用宏PTW32_STATIC_LIB,连接时添加必要的库,以及代码中调用pthread函数前的预处理步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目的就是为了只发布一个.exe文件,不想带任何dll,于是带出了这个问题。

断断续续折腾了1个月,平均每天用30分钟,算起来也就一整天了。。。

还好,总算解决了。



静态连接到pthread,关键是3点:

1、编译的时候加上PTW32_STATIC_LIB这个宏。

2、连接的时候带上pthreadGC2、ws2_32两个库。libpthreadGC2.a可以复制到工程目录下,连接的时候加上-L"${workspace_loc:/pthread-test2}"

3、代码里,调用任何pthread函数之前,加上如下代码:

#ifdef PTW32_STATIC_LIB
pthread_win32_process_attach_np();
atexit((P_ATEXIT_PROC)pthread_win32_process_detach_np);
#endif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值