You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用VS2017的CL.exe编译含Python.h的C代码时找不到头文件

解决CL.exe编译时找不到Python.h的问题

这个错误其实很常见,本质就是编译器不知道该去哪里找Python的头文件,咱们一步步来搞定它:

第一步:确认Python的安装路径

先找到你的Python安装目录,默认安装的话可能是C:\Python39(把39换成你实际的Python版本号就行,比如3.10就是Python310)。如果是自定义安装路径,就用你当时设置的那个。这里要特别注意架构匹配:如果你的Python是64位,必须打开VS2017的64位命令提示符(比如「x64 Native Tools Command Prompt for VS 2017」);如果是32位Python,就用x86版本的命令提示符,不匹配的话后面还是会出问题。

第二步:编译时指定头文件和库路径

打开对应架构的VS2017命令提示符,切换到helloworld.c所在的目录,然后用下面的命令编译:

cl helloworld.c /I"C:\Python39\include" /link /LIBPATH:"C:\Python39\libs" python39.lib

给你拆解一下这些参数的作用:

  • /I"C:\Python39\include":告诉编译器去这个目录找Python.h头文件
  • /link:后面跟着链接器需要的配置参数
  • /LIBPATH:"C:\Python39\libs":指定Python库文件的存放目录
  • python39.lib:对应你Python版本的导入库(比如Python3.10就换成python310.lib)

可选:设置环境变量简化编译流程

如果不想每次编译都敲这么长的命令,可以先把Python的路径加到环境变量里:

set INCLUDE=%INCLUDE%;C:\Python39\include
set LIB=%LIB%;C:\Python39\libs

之后直接用下面的命令编译就行:

cl helloworld.c /link python39.lib

这样编译器就会自动从环境变量里找需要的头文件和库文件了。

内容的提问来源于stack exchange,提问作者user8678779

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:34:13