pip安装时出现fatal error C1083: 无法打开包括文件: “xxx.h”: No such file or directory-从根源解决

本文主要是介绍pip安装时出现fatal error C1083: 无法打开包括文件: “xxx.h”: No such file or directory-从根源解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

pip安装时出现fatal error C1083: 无法打开包括文件: “xxx.h”: No such file or directory-从根源解决

具体为:
pybullet安装时出现fatal error C1083: 无法打开包括文件: “string.h”: No such file or directory
此方法具有通用性。

报错原文

      -----CloneTreeCreator.cppD:\Program_Professional\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.38.33130\include\cstring(11): fatal error C1083: 无法打开包括文件: “string.h”: No such file or directoryerror: command 'D:\\Program_Professional\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.ERROR: Failed building wheel for pybulletRunning setup.py clean for pybullet
Failed to build pybullet
ERROR: Could not build wheels for pybullet, which is required to install pyproject.toml-based projects

网上看了很多回答,都没有能够解决问题。

失败尝试1:Window10 SDK问题

我之前就装过VS了,环境都是满足要求的,也试过同时安装Window10 SDK和Window11 SDK,我的尝试没有什么作用。
在这里插入图片描述

失败尝试2:Window10 SDK的路径问题

之前pip安装老是报错io.h找不到,当时就在系统变量和用户变量中添加了路径path,但是在这个问题中不起作用。
此外,添加路径到path对报错似乎没有作用,报错的路径还是D:\Program_Professional\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.38.33130\include\cstring(11): fatal error C1083

在这里插入图片描述
实际上,string.h在\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.38\include\ucrt里面也有,但是依旧报找不到文件。

失败尝试3:粘贴文件到目录

我把ucrt里面的所有头文件都复制到了\BuildTools\VC\Tools\MSVC\14.38.33130\include\里面,但是又报错找不到windows.h,于是放弃这种修补方法。

成功尝试1:使用conda安装

参考:https://anaconda.org/conda-forge/pybullet

conda install -c conda-forge pybullet

(tensorflow-gpu-v1) C:\Users\24762\Downloads\bullet3-master\bullet3-master>conda install -c conda-forge pybullet
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Solving environment: unsuccessful attempt using repodata from current_repodata.json, retrying with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: done==> WARNING: A newer version of conda exists. <==current version: 23.7.4latest version: 23.11.0Please update conda by running$ conda update -n base -c defaults condaOr to minimize the number of packages updated during conda update useconda install conda=23.11.0## Package Plan ##environment location: D:\Program_Professional\Anaconda3\envs\tensorflow-gpu-v1added / updated specs:- pybulletThe following packages will be downloaded:package                    |            build---------------------------|-----------------bullet-cpp-3.21            |       hcc40339_3        20.6 MB  conda-forgeca-certificates-2023.11.17 |       h56e8100_0         151 KB  conda-forgecertifi-2023.11.17         |     pyhd8ed1ab_0         155 KB  conda-forgepybullet-3.21              |   py38hcc40339_3        63.0 MB  conda-forgepython_abi-3.8             |           2_cp38           4 KB  conda-forge------------------------------------------------------------Total:        83.8 MBThe following NEW packages will be INSTALLED:bullet-cpp         conda-forge/win-64::bullet-cpp-3.21-hcc40339_3pybullet           conda-forge/win-64::pybullet-3.21-py38hcc40339_3python_abi         conda-forge/win-64::python_abi-3.8-2_cp38The following packages will be SUPERSEDED by a higher-priority channel:ca-certificates    anaconda/pkgs/main::ca-certificates-2~ --> conda-forge::ca-certificates-2023.11.17-h56e8100_0certifi            anaconda/pkgs/main/win-64::certifi-20~ --> conda-forge/noarch::certifi-2023.11.17-pyhd8ed1ab_0Proceed ([y]/n)? yDownloading and Extracting PackagesPreparing transaction: done
Verifying transaction: done
Executing transaction: done

安装成功了

成功尝试2:手动配置环境变量-从根源解决

这种方法能够从根源解决fatal error C1083: 无法打开包括文件: “xxx.h”: No such file or directory的问题。当然需要首先安装好Window10 SDK,不然可能找不到下面的这些目录(推荐使用Visual Studio Installer安装,安装我之前截图的配置,当然我是window11系统因此用的是Window11 SDK)。

之前的环境变量都是在系统变量中的path中添加,实际上应该在INCLUDE(我电脑中没有自动生成,需要手动创建这个系统变量)中添加,如下所示:
在这里插入图片描述
此外,还需要在系统变量的LIB环境下添加(没有现成的也要手动创建,依据编译器的位数选择x86还是x64),有童鞋问为什么加那么多,因为有不同的报错,我自己尝试的时候就是报错一个就添加一个来着
在这里插入图片描述

在这里插入图片描述

添加环境变量后一定要重启电脑,再次运行pip命令,如果出现LNK1158: 无法运行“rc.exe” 就参考下面文章解决:
【问题解决】LINK : fatal error LNK1158: 无法运行“rc.exe”

这篇关于pip安装时出现fatal error C1083: 无法打开包括文件: “xxx.h”: No such file or directory-从根源解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/805685

相关文章

Spring的RedisTemplate的json反序列泛型丢失问题解决

《Spring的RedisTemplate的json反序列泛型丢失问题解决》本文主要介绍了SpringRedisTemplate中使用JSON序列化时泛型信息丢失的问题及其提出三种解决方案,可以根据性... 目录背景解决方案方案一方案二方案三总结背景在使用RedisTemplate操作redis时我们针对

虚拟机Centos7安装MySQL数据库实践

《虚拟机Centos7安装MySQL数据库实践》用户分享在虚拟机安装MySQL的全过程及常见问题解决方案,包括处理GPG密钥、修改密码策略、配置远程访问权限及防火墙设置,最终通过关闭防火墙和停止Net... 目录安装mysql数据库下载wget命令下载MySQL安装包安装MySQL安装MySQL服务安装完成

SpringBoot整合Dubbo+ZK注册失败的坑及解决

《SpringBoot整合Dubbo+ZK注册失败的坑及解决》使用Dubbo框架时,需在公共pom添加依赖,启动类加@EnableDubbo,实现类用@DubboService替代@Service,配... 目录1.先看下公共的pom(maven创建的pom工程)2.启动类上加@EnableDubbo3.实

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme