我正在尝试使用 cygwin 在 64 位 Win7 机器上构建 python 扩展 DLL(因为 cygwin 仅作为 32 位进程运行,这实际上是交叉编译)。
我使用 dlltool 从 python27.dll 自己创建了 libpython27.a (如解释,例如,here),但是在链接器阶段构建失败说
skipping incompatible c:\Python27\libs/libpython27.a when searching for -lpython27
这正是这里报告的错误(那个家伙最终转移到 MSVC 编译器.. .)。
更多信息:
- 活动 Python 2.7.2、win64、x64
- 最新版本的 cygwin,使用 /usr/bin/x86_64-w64-mingw32-g++.exe 编译器
有谁知道这是否支持?
有没有办法使用我在这里想念的 dlltool?
(我确实在这里找到了使用指南,
dlltool --as-flags=--64 -m i386:x86-64 -k -l libpython27.a -d python.def
但是这样做时我"invalid bfd target"
从 dlltool 得到错误)
谢谢!
更新:我相信它可以做到,因为Enthought python包含这样一个文件。我想为不包含它的更常见的发行版创建一个。