3

我是 pythran 的新手,现在遇到文件格式无法识别的问题,如下所示:

D:\DevWorkSpace\cython>pythran dprod.py
WARNING  Pythran support disabled for module: omp
Looking for python27.dll
objdump.exe: D:\Program Files\Anaconda2\python27.dll: File format not recognized
CRITICAL Chair to keyboard interface error
E: Symbol table not found

我的操作系统是 Win 10 64 位。Pythran 的版本是 0.7.4.post1。我使用的python是anaconda 2:

Python 2.7.11 |Anaconda 2.3.0 (64-bit)| (default, Feb 16 2016, 09:58:36) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org

因为我第一次尝试 Cython,所以我先安装了 Visual Studio 2008 SP1 和 Windows SKD for VC 2008。然后我为 gcc 编译器(gcc 版本 4.93)安装了 MinGW,并按照这个答案使用 gcc 编译器。这是我第一次遇到这个问题文件格式无法识别

然后我卸载 pythran 并使用以下命令重新安装它:

pip install --global-option build_ext --global-option --compiler=mingw32 pythran

我得到了这个:failed to create process

我还尝试从 pypi 的源代码安装 pythran 并使用: python setup.py install. 它没有用。

此外,我无法从 conda 安装 pythran,这给了我以下消息:

C:\Users\JHW>conda install -c serge-sans-paille pythran
Fetching package metadata: ......
Solving package specifications: .
Error:  Package missing in current win-64 channels:
  - pythran

Did you mean one of these?

    python, ipython

You can search for this package on anaconda.org with

    anaconda search -t conda pythran

最后,我还尝试用另一个 python27.dll 替换它,它是从 \MySQL\MySQL Workbench 6.3 CE 复制的。这种无法识别的文件格式消失了,但 pythran 仍然无法正常工作。我的意思是“pythran 不起作用”

D:\DevWorkSpace\cython>pythran dprod.py
WARNING  Pythran support disabled for module: omp
CRITICAL Chair to keyboard interface error
E: Unknown MS Compiler version 1800

感谢@cdarke 的评论,看来我应该转向编译器的问题。我不得不承认,当我发布这个问题时,我忽略了这个错误。我遗漏了这个问题的原因是,当我替换 anaconda2 中的 python27.dll 时,anaconda 中的 iPython notebook 无法工作(当我启动它时,弹出一个 cmd 窗口并很快消失,我无法捕捉到错误)

所以我的问题是:

  1. 哪里可以找到合适的python27.dll来解决文件格式无法识别的问题,而不会损坏iPython笔记本功能。(或如何在 iPython 笔记本开始时保留错误)

  2. 解决未知 MS 编译器版本 1800 的提示。(我现在正试图弄清楚如何解决编译器问题,但我是 MS 编译器的新手。所以任何提示将不胜感激!)

非常感谢您!

4

1 回答 1

1

根据文档,Pythran 仅通过WinPython支持 Windows 。

这种选择背后的原因是缺乏对 Visual Studio C++ 编译器中所有 C++11 功能的良好支持……</p>

于 2016-04-20T09:11:53.210 回答