Проблема сборки программы на Cython под Windows - PullRequest
1 голос
/ 03 февраля 2011

Я начал играть с cython на моей машине с Windows XP, настроенной на Python 2.6.Я попытался запустить простой пример на сайте Cython, но преобразование файла примера .pyx сразу завершается ошибкой.

Файл .pyx настроен на

def say_hello_to(name):
   print("Hello, %s" % name)

.py выглядит так:

from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext

ext_modules = [Extension("hello", ["hello.pyx"])]

setup(
   name = 'Hello world app',
   cmdclass = {'build_ext': build_ext},
   ext_modules = ext_modules
)

В командном окне я выполняю команду

python setup.py build_ext --inplace

Обратите внимание, что все это именно то, что говорит веб-страница.

КакВ результате я получаю следующий вывод:

Error converting Pyrex file to C:
--------------------------------------------------------
...
def say_hello_to(name):
                      ^
--------------------------------------------------------

В сообщении об ошибке написано "Нераспознанные символы".

Я пытаюсь использовать тот же пример на компьютере с Linux, и он работает нормально.

В чем здесь проблема и почему двоеточие помечено как неузнаваемое?

1 Ответ

2 голосов
/ 03 февраля 2011

(Повторная отправка в качестве ответа, потому что это, очевидно, решило проблему)

Просто предположение, но могут ли быть проблемы с окончаниями строки?Например, если в файле есть окончания строк Unix '\n', но в Windows он ожидает окончания строк в Windows '\r\n'?

ОК, так что все наоборот.Он ожидает '\n' окончания строк, и редактор преобразует их в '\r\n'.

...