我想在一个使用cygwin的64位Win7机器上构建一个python扩展DLL(因为cygwin只能作为32位进程运行,实际上是交叉编译)。建立64位libpython27.a使用cygwin,dlltool
我使用dlltool(作为解释,例如,here)libpython27.a自己创造了从python27.dll,但在连接阶段构建失败说
skipping incompatible c:\Python27\libs/libpython27.a when searching for -lpython27
这正是错误报告here(其中家伙最终转移到MSVC编译器...)。
更多信息:
- 活跃的Python 2.7.2,Win64的,64
- cygwin的最新版本,使用/usr/bin/x86_64-w64-mingw32-g++.exe编译
不任何人都知道这是否被支持?
有没有办法使用我在这里错过的dlltool?
(我没发现here指导使用
dlltool --as-flags=--64 -m i386:x86-64 -k -l libpython27.a -d python.def
但这样做的时候,我从dlltool "invalid bfd target"
错误)
谢谢!
更新:我相信可以这样做,因为Enthought python包含这样的文件。我想创建一个不包含它的更常见发行版。
那么如果我们知道这个标志,它现在不会是_secret_了吗? – brc