【发布时间】:2020-05-12 07:45:10
【问题描述】:
我在我的程序中包含了 Python.h,当我编译程序时它显示多个错误,告诉“无法打开几个库” 错误信息如下
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 7: Unable to open include file 'patchlevel.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 8: Unable to open include file 'pyconfig.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 9: Unable to open include file 'pymacconfig.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 50: Unable to open include file 'pyport.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 52: Unable to open include file 'pyatomic.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 63: Unable to open include file 'pymath.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 64: Unable to open include file 'pytime.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 65: Unable to open include file 'pymem.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 67: Unable to open include file 'object.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 68: Unable to open include file 'objimpl.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 69: Unable to open include file 'typeslots.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 71: Unable to open include file 'pydebug.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 73: Unable to open include file 'bytearrayobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 74: Unable to open include file 'bytesobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 75: Unable to open include file 'unicodeobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 76: Unable to open include file 'longobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 77: Unable to open include file 'longintrepr.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 78: Unable to open include file 'boolobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 79: Unable to open include file 'floatobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 80: Unable to open include file 'complexobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 81: Unable to open include file 'rangeobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 82: Unable to open include file 'memoryobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 83: Unable to open include file 'tupleobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 84: Unable to open include file 'listobject.h'
Error E2209 C:\Borland\bcc55\INCLUDE\Python.h 85: Unable to open include file 'dictobject.h'
Error E2228 C:\Borland\bcc55\INCLUDE\Python.h 85: Too many error or warning messages
*** 26 errors in Compile ***
而且我的程序中没有包含任何上述缺失的库
#include<stdio.h>
#include<Python.h>
int main()
{
Py_SetProgramName(argv[0]);
Py_Initialize();
PyRun_SimpleString("print("hello")");
Py_Finalize();
return 0;
}
【问题讨论】:
-
你是怎么编译的?似乎您只是在某个地方复制了 Python.h,但编译器没有使用正确的 include 目录。这些是编译器将在其中查找文件包含的标头的目录。
-
消息说“无法打开包含文件”;没有提到图书馆。 (这是一个重要的区别,因为就编译器而言,库是链接器要处理的东西,而您并没有深入到编译过程中。)
标签: python c++ c python-3.x file