我最近买了一台新电脑,并试图将一个python项目从我的旧电脑移到我的新电脑上.python项目使用了一些directx9 C++代码(使用#include <Python.h>)来截取屏幕并编译我使用G ++的这个C++文件.
在不更改任何代码的情况下,在安装G ++和Python之后,我发现我用来编译代码会返回错误:
g++ -std=c++11 -shared -IC:\Python27\include -LC:\Python27\libs ScreenShots/PictureStr.cpp -lpython27 -ld3d9 -lole32 -o ScreenShots/PictureStr.pyd
Run Code Online (Sandbox Code Playgroud)
返回:
C:\Python27\libs/libpython27.a: error adding symbols: File format not recognized
collect2.exe: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
(删除-ld3d9 -lole32不会改变任何东西)
我不知道为什么会发生这种情况(并且不会发生在我尝试的任何其他计算机或我的旧计算机上)并且我无法找到任何可能导致这种情况发生的事情.
如果这是相关的,我使用Windows 10 64bit(在我的旧计算机和新计算机中).
也许我需要重新编译python库或那个特定的文件,所以任何关于如何做到这一点的建议也非常感谢.
感谢您阅读本文,欢迎任何建议.
我找到了一个解决方案,我回答道.