问题描述
Python解释器: 3.7
Python库: pywinhook https://pypi.org/project/pyWinhook/。
构建此库的教程:该库是从pyHook库完成的。这就是为什么我使用以下教程来构建此库https://sourceforge.net/p/pyhook/wiki/PyHook_Build_Instructions/。
已完成的步骤:我下载了库的源代码。我安装了MinGW和SWIG。我添加了所需的环境变量。
问题::当我执行 python setup.py build -cmingw32 时,出现以下错误,无法继续进行此过程。如果有人可以向我解释我该怎么办。预先感谢
执行的最后几行是:
build\temp.win-amd64-3.7\Release\pywinhook\cpyhook_wrap.o:cpyHook_wrap.c:(.text+0x1bb6): undefined reference to `_imp__PyEval_RestoreThread'
collect2.exe: error: ld returned 1 exit status
error: command 'C:\\MinGW\\bin\\gcc.exe' Failed with exit status 1
解决方法
搜索错误:对`_imp__PyEval_RestoreThread'的未定义引用 collect2.exe:错误:ld返回1退出状态
我明白了,可能有帮助。
https://github.com/miniupnp/miniupnp/issues/224
,经过长时间的搜索,并根据@Juan Botero共享的链接,我意识到我正在使用64位进行编译。解决方法如下:
-
在https://sourceforge.net/projects/mingw-w64/上下载MinGW-w64
-
由于我使用的是VB的更新版本,因此在文件cygwinccompiler.py中添加以下语句。
elif msc_ver =='1900': 返回['msvcr100']
-
我运行了教程中编写的说明,并且可以正常工作。