Windows:基于 MinGW 的 CLion 使用 Pthreads
1,准备工作:
CLion 2021.2
Pthreads-Win32(使用迅雷FTP下载地址:ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.zip)
MinGW
2,Pthreads-Win32 配置
3,MinGW 需要确保安装 Pthreads
3.1 打开 MinGW Installation
- “开始”菜单 --> “MinGW Installation Manager”
3.2 安装 mingw32-pthreads
选择 mingw32-pthreads
标记为待安装
安装
4,配置 CLion CMakeLists.txt
4.1 本教程是基于 C 语言的
set(CMAKE_C_STANDARD 99)
4.2 项目中新建 include
和 lib
目录
- 将 Pthreads 中的 include 文件复制到本项目的 include 中:
pthreads-w32-2-9-1-release\Pre-built.2\include
- 将 Pthreads 中的 lib 文件复制到本项目的 lib 目录中,可以只复制
.lib
结尾的文件- 如果项目是基于 64 位开发,目录位置:
pthreads-w32-2-9-1-release\Pre-built.2\lib\x64
- 如果项目是基于 32 位开发,目录位置:
pthreads-w32-2-9-1-release\Pre-built.2\lib\x86
- 如果项目是基于 64 位开发,目录位置:
4.3 CMakeLists.txt 中关于 Pthreads 配置
# 设置头文件路径
set(INC_DIR ./include)
# 设置链接库路径
set(LINK_DIR ./lib)
# 引入头文件
include_directories(${INC_DIR})
# 引入库文件
link_directories(${LINK_DIR})
# 配置 -pthread 命令
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread")
# 省略其他部分...
4.4 其他解决方案(我没有验证成功,可以自行查看下方参考资料阅读)
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads REQUIRED)
add_executable(sqlite_storage main.c)
# 将第三方库连接在一起
target_link_libraries(sqlite_storage Threads::Threads)
参考资料: