首页 > 解决方案 > 如何解决使用 cython 时未解决的对“Py ..”的引用的问题

问题描述

我使用 Cython 来混淆 Python 代码,目的是为其他人隐藏我的代码。首先,在创建了我的 python 文件 Example.py 之后,我运行了这个:

cython3 --embed -o Example.c Example.py

那行得通,我得到了我的 .c 文件!但是当我想进行下一步时,即使我使用不同的方式在 C 中创建可执行文件,我也面临着这个非常特殊的问题。让我们向您展示我尝试启动的命令:

* gcc $(python3-config --includes) -I Example Example.c *

* gcc -o 嵌入式 -fPIC -I /usr/include/python3.6m -lpython3.6m Embedded.c *

* gcc $(python3-config --includes) Example.c *

这总是我得到的错误:

/tmp/ccvChgth.o : Dans la fonction « __pyx_pw_6Mining_7Example_1Test1 » :
Example.c:(.text+0xdd) : référence indéfinie vers « PyDict_Size »
Example.c:(.text+0x116) : référence indéfinie vers « _PyDict_GetItem_KnownHash »
Example.c:(.text+0x156) : référence indéfinie vers « _PyDict_GetItem_KnownHash »
/tmp/ccvChgth.o : Dans la fonction « __pyx_pf_6Mining_7Example_Test1 » :
Example.c:(.text+0x408) : référence indéfinie vers « PyNumber_Multiply »
/tmp/ccvChgth.o : Dans la fonction « __pyx_pf_6Mining_7Example_2Test2 » :
Example.c:(.text+0x8f3) : référence indéfinie vers « PyList_New »
Example.c:(.text+0x9af) : référence indéfinie vers « PyMethod_Type »
Example.c:(.text+0xc51) : référence indéfinie vers « PyTuple_New »
Example.c:(.text+0xcb4) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0xcff) : référence indéfinie vers « PyList_New »
Example.c:(.text+0xd86) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0xff0) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0x1046) : référence indéfinie vers « _Py_TrueStruct »
Example.c:(.text+0x1051) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x1091) : référence indéfinie vers « _Py_FalseStruct »
Example.c:(.text+0x109c) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x10e7) : référence indéfinie vers « PyDict_SetItem »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_InitCachedConstants » :
Example.c:(.text+0x144d) : référence indéfinie vers « PyTuple_Pack »
Example.c:(.text+0x14b0) : référence indéfinie vers « PyTuple_Pack »
Example.c:(.text+0x1565) : référence indéfinie vers « PyCode_New »
Example.c:(.text+0x15c5) : référence indéfinie vers « PyTuple_Pack »
Example.c:(.text+0x167a) : référence indéfinie vers « PyCode_New »
Example.c:(.text+0x16d7) : référence indéfinie vers « PyTuple_Pack »
/tmp/ccvChgth.o : Dans la fonction « PyInit_Example » :
Example.c:(.text+0x17c7) : référence indéfinie vers « PyModuleDef_Init »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_check_single_interpreter » :
Example.c:(.text+0x17d6) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x17e2) : référence indéfinie vers « PyInterpreterState_GetID »
Example.c:(.text+0x1839) : référence indéfinie vers « PyExc_ImportError »
Example.c:(.text+0x1848) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_copy_spec_to_module » :
Example.c:(.text+0x1885) : référence indéfinie vers « PyObject_GetAttrString »
Example.c:(.text+0x18ad) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x18ca) : référence indéfinie vers « PyDict_SetItemString »
Example.c:(.text+0x1911) : référence indéfinie vers « PyExc_AttributeError »
Example.c:(.text+0x1919) : référence indéfinie vers « PyErr_ExceptionMatches »
Example.c:(.text+0x1922) : référence indéfinie vers « PyErr_Clear »
/tmp/ccvChgth.o : Dans la fonction « __pyx_pymod_create » :
Example.c:(.text+0x1997) : référence indéfinie vers « PyObject_GetAttrString »
Example.c:(.text+0x19bb) : référence indéfinie vers « PyModule_NewObject »
Example.c:(.text+0x1a1a) : référence indéfinie vers « PyModule_GetDict »
/tmp/ccvChgth.o : Dans la fonction « __pyx_pymod_exec_Example » :
Example.c:(.text+0x1bbc) : référence indéfinie vers « PyExc_RuntimeError »
Example.c:(.text+0x1bcb) : référence indéfinie vers « PyErr_SetString »
Example.c:(.text+0x1c0c) : référence indéfinie vers « PyFrame_Type »
Example.c:(.text+0x1c21) : référence indéfinie vers « PyTuple_New »
Example.c:(.text+0x1c75) : référence indéfinie vers « PyBytes_FromStringAndSize »
Example.c:(.text+0x1cc9) : référence indéfinie vers « PyUnicode_FromStringAndSize »
Example.c:(.text+0x1d6a) : référence indéfinie vers « PyModule_GetDict »
Example.c:(.text+0x1dca) : référence indéfinie vers « PyImport_AddModule »
Example.c:(.text+0x1e2a) : référence indéfinie vers « PyImport_AddModule »
Example.c:(.text+0x1e9b) : référence indéfinie vers « PyObject_SetAttrString »
Example.c:(.text+0x1f20) : référence indéfinie vers « PyObject_SetAttr »
Example.c:(.text+0x1f50) : référence indéfinie vers « PyImport_GetModuleDict »
Example.c:(.text+0x1fa7) : référence indéfinie vers « PyDict_GetItemString »
Example.c:(.text+0x1fc9) : référence indéfinie vers « PyDict_SetItemString »
Example.c:(.text+0x20b2) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x21b2) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x22e2) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x2400) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x24e5) : référence indéfinie vers « PyLong_Type »
Example.c:(.text+0x251a) : référence indéfinie vers « PyNumber_Long »
Example.c:(.text+0x25c4) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x292d) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0x298e) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x2b8b) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x2b97) : référence indéfinie vers « PyExc_ImportError »
Example.c:(.text+0x2ba6) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyObject_GetAttrStr » :
Example.c:(.text+0x2c28) : référence indéfinie vers « PyObject_GetAttr »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_GetBuiltinName » :
Example.c:(.text+0x2c67) : référence indéfinie vers « PyExc_NameError »
Example.c:(.text+0x2c7f) : référence indéfinie vers « PyErr_Format »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_RaiseArgtupleInvalid » :
Example.c:(.text+0x2d01) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x2d2b) : référence indéfinie vers « PyErr_Format »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_RaiseDoubleKeywordsError » :
Example.c:(.text+0x2d49) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x2d65) : référence indéfinie vers « PyErr_Format »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_ParseOptionalKeywords » :
Example.c:(.text+0x2f5f) : référence indéfinie vers « PyUnicode_AsUnicode »
Example.c:(.text+0x3024) : référence indéfinie vers « PyUnicode_AsUnicode »
Example.c:(.text+0x30a5) : référence indéfinie vers « PyUnicode_Compare »
Example.c:(.text+0x30ba) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x3228) : référence indéfinie vers « PyUnicode_AsUnicode »
Example.c:(.text+0x32ed) : référence indéfinie vers « PyUnicode_AsUnicode »
Example.c:(.text+0x336e) : référence indéfinie vers « PyUnicode_Compare »
Example.c:(.text+0x3383) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x33d0) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x33f9) : référence indéfinie vers « PyDict_Next »
Example.c:(.text+0x3426) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x343e) : référence indéfinie vers « PyErr_Format »
Example.c:(.text+0x344c) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x3464) : référence indéfinie vers « PyErr_Format »
/tmp/ccvChgth.o : Dans la fonction « __Pyx__GetModuleGlobalName » :
Example.c:(.text+0x34bf) : référence indéfinie vers « _PyDict_GetItem_KnownHash »
Example.c:(.text+0x350d) : référence indéfinie vers « PyErr_Occurred »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyCFunction_FastCall » :
Example.c:(.text+0x359e) : référence indéfinie vers « PyCFunction_Type »
Example.c:(.text+0x3646) : référence indéfinie vers « PyErr_Occurred »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyFunction_FastCallNoKw » :
Example.c:(.text+0x36ca) : référence indéfinie vers « _PyThreadState_UncheckedGet »
Example.c:(.text+0x3733) : référence indéfinie vers « PyFrame_New »
Example.c:(.text+0x37e5) : référence indéfinie vers « PyEval_EvalFrameEx »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyFunction_FastCallDict » :
Example.c:(.text+0x390d) : référence indéfinie vers « PyDict_Size »
Example.c:(.text+0x391d) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x392f) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x393f) : référence indéfinie vers « _Py_CheckRecursiveCall »
Example.c:(.text+0x3a4f) : référence indéfinie vers « PyTuple_New »
Example.c:(.text+0x3b0c) : référence indéfinie vers « PyDict_Next »
Example.c:(.text+0x3bda) : référence indéfinie vers « PyEval_EvalCodeEx »
Example.c:(.text+0x3c34) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x3c46) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3c53) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3c5e) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3c72) : référence indéfinie vers « PyThreadState_Get »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyObject_Call » :
Example.c:(.text+0x3cde) : référence indéfinie vers « PyObject_Call »
Example.c:(.text+0x3ce8) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x3cfa) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3d13) : référence indéfinie vers « _Py_CheckRecursiveCall »
Example.c:(.text+0x3d48) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x3d5a) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3d67) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3d72) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x3d86) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x3d9f) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x3db4) : référence indéfinie vers « PyExc_SystemError »
Example.c:(.text+0x3dc3) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyObject_Call2Args » :
Example.c:(.text+0x3e03) : référence indéfinie vers « PyFunction_Type »
Example.c:(.text+0x3e46) : référence indéfinie vers « PyCFunction_Type »
Example.c:(.text+0x3e97) : référence indéfinie vers « PyTuple_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyObject_CallMethO » :
Example.c:(.text+0x3ff6) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x4008) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x4021) : référence indéfinie vers « _Py_CheckRecursiveCall »
Example.c:(.text+0x4055) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x4067) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x4074) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x407f) : référence indéfinie vers « _Py_CheckRecursionLimit »
Example.c:(.text+0x4093) : référence indéfinie vers « PyThreadState_Get »
Example.c:(.text+0x40ac) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x40c1) : référence indéfinie vers « PyExc_SystemError »
Example.c:(.text+0x40d0) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx__PyObject_CallOneArg » :
Example.c:(.text+0x40f0) : référence indéfinie vers « PyTuple_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyObject_CallOneArg » :
Example.c:(.text+0x41a5) : référence indéfinie vers « PyFunction_Type »
Example.c:(.text+0x41d8) : référence indéfinie vers « PyCFunction_Type »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_Import » :
Example.c:(.text+0x42a7) : référence indéfinie vers « PyList_New »
Example.c:(.text+0x42cd) : référence indéfinie vers « PyModule_GetDict »
Example.c:(.text+0x42e1) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0x4310) : référence indéfinie vers « PyImport_ImportModuleLevelObject »
Example.c:(.text+0x4322) : référence indéfinie vers « PyExc_ImportError »
Example.c:(.text+0x432a) : référence indéfinie vers « PyErr_ExceptionMatches »
Example.c:(.text+0x4333) : référence indéfinie vers « PyErr_Clear »
Example.c:(.text+0x435f) : référence indéfinie vers « PyImport_ImportModuleLevelObject »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_FetchCommonType » :
Example.c:(.text+0x442c) : référence indéfinie vers « PyImport_AddModule »
Example.c:(.text+0x446a) : référence indéfinie vers « PyObject_GetAttrString »
Example.c:(.text+0x44a1) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x44b5) : référence indéfinie vers « PyErr_Format »
Example.c:(.text+0x44e2) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x44f6) : référence indéfinie vers « PyErr_Format »
Example.c:(.text+0x4502) : référence indéfinie vers « PyExc_AttributeError »
Example.c:(.text+0x450a) : référence indéfinie vers « PyErr_ExceptionMatches »
Example.c:(.text+0x4517) : référence indéfinie vers « PyErr_Clear »
Example.c:(.text+0x4523) : référence indéfinie vers « PyType_Ready »
Example.c:(.text+0x4542) : référence indéfinie vers « PyObject_SetAttrString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_doc » :
Example.c:(.text+0x464c) : référence indéfinie vers « PyUnicode_FromString »
Example.c:(.text+0x467b) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x4686) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x468d) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_doc » :
Example.c:(.text+0x46d9) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_name » :
Example.c:(.text+0x4785) : référence indéfinie vers « PyUnicode_InternFromString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_name » :
Example.c:(.text+0x4816) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x4825) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_qualname » :
Example.c:(.text+0x491c) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x492b) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_self » :
Example.c:(.text+0x49d3) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_dict » :
Example.c:(.text+0x4a1a) : référence indéfinie vers « PyDict_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_dict » :
Example.c:(.text+0x4a89) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x4a98) : référence indéfinie vers « PyErr_SetString »
Example.c:(.text+0x4acb) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x4ada) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_closure » :
Example.c:(.text+0x4b97) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x4ba2) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x4ba9) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_code » :
Example.c:(.text+0x4bd5) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_defaults » :
Example.c:(.text+0x4ce8) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o:Example.c:(.text+0x4cf5) : encore plus de références indéfinies suivent vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_defaults » :
Example.c:(.text+0x4d1b) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x4d2a) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_defaults » :
Example.c:(.text+0x4e20) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_kwdefaults » :
Example.c:(.text+0x4e5e) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x4e6b) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x4e91) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x4ea0) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_kwdefaults » :
Example.c:(.text+0x4f96) : référence indéfinie vers « _Py_NoneStruct »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_set_annotations » :
Example.c:(.text+0x4fd4) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x5004) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x5013) : référence indéfinie vers « PyErr_SetString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_get_annotations » :
Example.c:(.text+0x50e1) : référence indéfinie vers « PyDict_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_reduce » :
Example.c:(.text+0x5146) : référence indéfinie vers « PyUnicode_FromString »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_New » :
Example.c:(.text+0x5173) : référence indéfinie vers « _PyObject_GC_New »
Example.c:(.text+0x5308) : référence indéfinie vers « PyObject_GC_Track »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_clear » :
Example.c:(.text+0x58fd) : référence indéfinie vers « PyObject_Free »
/tmp/ccvChgth.o : Dans la fonction « __Pyx__CyFunction_dealloc » :
Example.c:(.text+0x5938) : référence indéfinie vers « PyObject_ClearWeakRefs »
Example.c:(.text+0x5950) : référence indéfinie vers « PyObject_GC_Del »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_dealloc » :
Example.c:(.text+0x596b) : référence indéfinie vers « PyObject_GC_UnTrack »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_descr_get » :
Example.c:(.text+0x5cf6) : référence indéfinie vers « PyMethod_New »
Example.c:(.text+0x5d17) : référence indéfinie vers « _Py_NoneStruct »
Example.c:(.text+0x5d3f) : référence indéfinie vers « PyMethod_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_repr » :
Example.c:(.text+0x5d85) : référence indéfinie vers « PyUnicode_FromFormat »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_CallMethod » :
Example.c:(.text+0x5e08) : référence indéfinie vers « PyDict_Size »
Example.c:(.text+0x5e69) : référence indéfinie vers « PyDict_Size »
Example.c:(.text+0x5ef8) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x5f10) : référence indéfinie vers « PyErr_Format »
Example.c:(.text+0x5f36) : référence indéfinie vers « PyDict_Size »
Example.c:(.text+0x5fdb) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x5ff3) : référence indéfinie vers « PyErr_Format »
Example.c:(.text+0x6001) : référence indéfinie vers « PyExc_SystemError »
Example.c:(.text+0x6010) : référence indéfinie vers « PyErr_SetString »
Example.c:(.text+0x6030) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x6044) : référence indéfinie vers « PyErr_Format »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CyFunction_CallAsMethod » :
Example.c:(.text+0x6116) : référence indéfinie vers « PyTuple_GetSlice »
Example.c:(.text+0x6145) : référence indéfinie vers « PyTuple_GetItem »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CLineForTraceback » :
Example.c:(.text+0x645d) : référence indéfinie vers « _PyObject_GetDictPtr »
Example.c:(.text+0x64c5) : référence indéfinie vers « _PyDict_GetItem_KnownHash »
Example.c:(.text+0x651e) : référence indéfinie vers « PyObject_Not »
Example.c:(.text+0x6529) : référence indéfinie vers « _Py_FalseStruct »
Example.c:(.text+0x6532) : référence indéfinie vers « _Py_TrueStruct »
Example.c:(.text+0x6578) : référence indéfinie vers « PyErr_Clear »
Example.c:(.text+0x65a3) : référence indéfinie vers « _Py_FalseStruct »
Example.c:(.text+0x65ae) : référence indéfinie vers « PyObject_SetAttr »
Example.c:(.text+0x65b7) : référence indéfinie vers « _Py_FalseStruct »
Example.c:(.text+0x65c4) : référence indéfinie vers « _Py_TrueStruct »
Example.c:(.text+0x65d6) : référence indéfinie vers « PyObject_Not »
/tmp/ccvChgth.o : Dans la fonction « __pyx_insert_code_object » :
Example.c:(.text+0x680b) : référence indéfinie vers « PyMem_Malloc »
Example.c:(.text+0x6971) : référence indéfinie vers « PyMem_Realloc »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_CreateCodeObjectForTraceback » :
Example.c:(.text+0x6a86) : référence indéfinie vers « PyUnicode_FromString »
Example.c:(.text+0x6abd) : référence indéfinie vers « PyUnicode_FromFormat »
Example.c:(.text+0x6acf) : référence indéfinie vers « PyUnicode_FromString »
Example.c:(.text+0x6b45) : référence indéfinie vers « PyCode_New »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_AddTraceback » :
Example.c:(.text+0x6c96) : référence indéfinie vers « _PyThreadState_UncheckedGet »
Example.c:(.text+0x6d31) : référence indéfinie vers « PyFrame_New »
Example.c:(.text+0x6d52) : référence indéfinie vers « PyTraceBack_Here »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_main » :
Example.c:(.text+0x6e1a) : référence indéfinie vers « Py_SetProgramName »
Example.c:(.text+0x6e1f) : référence indéfinie vers « Py_Initialize »
Example.c:(.text+0x6e3d) : référence indéfinie vers « PySys_SetArgv »
Example.c:(.text+0x6e67) : référence indéfinie vers « PyModule_Type »
Example.c:(.text+0x6e7f) : référence indéfinie vers « PyModule_Type »
Example.c:(.text+0x6e87) : référence indéfinie vers « PyType_IsSubtype »
Example.c:(.text+0x6ea3) : référence indéfinie vers « PyUnicode_FromString »
Example.c:(.text+0x6ec2) : référence indéfinie vers « PyModule_NewObject »
Example.c:(.text+0x6f1b) : référence indéfinie vers « PyModule_ExecDef »
Example.c:(.text+0x6f20) : référence indéfinie vers « PyErr_Occurred »
Example.c:(.text+0x6f2a) : référence indéfinie vers « PyErr_Print »
Example.c:(.text+0x6f80) : référence indéfinie vers « Py_Finalize »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_Print » :
Example.c:(.text+0x7489) : référence indéfinie vers « PyObject_GetAttr »
Example.c:(.text+0x74b6) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0x74ee) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x7518) : référence indéfinie vers « PyUnicode_FromStringAndSize »
Example.c:(.text+0x754a) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x75fe) : référence indéfinie vers « PyDict_New »
Example.c:(.text+0x7635) : référence indéfinie vers « PyUnicode_FromStringAndSize »
Example.c:(.text+0x7670) : référence indéfinie vers « PyDict_SetItem »
Example.c:(.text+0x7719) : référence indéfinie vers « PyObject_Call »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PrintOne » :
Example.c:(.text+0x7853) : référence indéfinie vers « PyTuple_Pack »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_InBases » :
Example.c:(.text+0x7905) : référence indéfinie vers « PyBaseObject_Type »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_check_binary_version » :
Example.c:(.text+0x7c01) : référence indéfinie vers « PyOS_snprintf »
Example.c:(.text+0x7c06) : référence indéfinie vers « Py_GetVersion »
Example.c:(.text+0x7c2c) : référence indéfinie vers « PyOS_snprintf »
Example.c:(.text+0x7c8b) : référence indéfinie vers « PyOS_snprintf »
Example.c:(.text+0x7ca4) : référence indéfinie vers « PyErr_WarnEx »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_InitStrings » :
Example.c:(.text+0x7d10) : référence indéfinie vers « PyUnicode_InternFromString »
Example.c:(.text+0x7d55) : référence indéfinie vers « PyUnicode_Decode »
Example.c:(.text+0x7d80) : référence indéfinie vers « PyUnicode_FromStringAndSize »
Example.c:(.text+0x7dab) : référence indéfinie vers « PyBytes_FromStringAndSize »
Example.c:(.text+0x7dd6) : référence indéfinie vers « PyObject_Hash »
/tmp/ccvChgth.o : Dans la fonction « __Pyx_PyNumber_IntOrLongWrongResultType » :
Example.c:(.text+0x7e40) : référence indéfinie vers « PyExc_DeprecationWarning »
Example.c:(.text+0x7e5c) : référence indéfinie vers « PyErr_WarnFormat »
Example.c:(.text+0x7ebb) : référence indéfinie vers « PyExc_TypeError »
Example.c:(.text+0x7eda) : référence indéfinie vers « PyErr_Format »
collect2: error: ld returned 1 exit status

我的意思是,错误总是与“Py ...”函数有关。我检查了.c文件,里面有所有的功能,但我不知道如何解决它。我补充说我的python代码非常非常简单

非常感谢

标签: pythonccython

解决方案


推荐阅读