VS2022运行VS2015项目出现错误

本文详细描述了解决VS2022编译过程中遇到的三个问题:WindowsSDK8.1版本缺失、寻找VisualStudio2015生成工具以及安装和配置pthread库以支持多线程。

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

在VS2022中编译之前的项目遇到的错误,记录一下。

一、error MSB8036: 找不到 Windows SDK 版本8.1。

下载链接:SDK版本
直接下载Windows SDK 8.1版本放在
C:\ProgramFiles(x86)\Common\Files\Microsoft\ExtensionManager\Extensions\Microsoft\Windows Kits 目录下(如果VS是默认的安装地址)

二、VS2022中 无法找到 Visual Studio 2015 的生成工具(平台工具集 =“v140”)

1、打开Visual Studio Installer,点击修改
打开VS Installer,点击修改
2、选择“单个组件”,输入MSVC,选择右边“ MSVC V140 VS2015 C++生成工具(v140)”
选择“单个组件”,输入MSVC,选择右边“ MSVC V140 VS2015 C++”
(这种做法会导致软件占用空间多了几个G,毕竟MSVC v140占用空间较大)

三、fatal error C1083: 无法打开包括文件: “pthread.h”

网上搜索发现有在“管理NuGet程序包”中搜索pthread下载第一个的,我搜索后没有发现pthread,所以在官网下载配置。

VS2022中安装配置pthread多线程

pthread官网下载

1、选择“pthreads-w32-2-9-1-release”在这里插入图片描述
解压后得到三个文件夹,一般只用到Pre-built.1文件夹。

2、在项目的解决方案中,右键项目,选择属性->VC++目录->常规,在 包含目录和库目录 中分别添加Pre-built.1文件夹中的 include目录和lib目录
在这里插入图片描述
然后在 链接器->输入->附加依赖项 中填入 pthreadVC1.lib

3、如果代码运行后有 提示timespec";" struct类型重定义 的错误,解决方法:
在源程序中添加头文件 #include <pthread.h> ,按住ctrl鼠标点击<pthread.h>,会跳到pthread.h头文件,在此文件中加入一行代码:
#define HAVE_STRUCT_TIMESPEC
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值