понедельник, 22 марта 2010 г.

Компиляция python code в linux (ubuntu)

Иногда нужно из python кода получить бинарник (скомпилированный файл). У меня такая задача возникла на linux (в ubuntu)

Эту проблему легко решает библиотека на python, которая называется cx_Freeze (домашняя страница http://cx-freeze.sourceforge.net/)
Для установке в ubuntu запускаем в командной строке:

sudo apt-get install cx-freeze

На официальном сайте дается пример

cxfreeze hello.py --target-dir dist

где в hello.py рассмотрен самый простой случай:

print "Hello, World!"

Мне же нужен более сложный случай.
Возникали ошибки вроде такой

LookupError: unknown encoding: ascii

Я решил проблему так, как указано в документации

cxfreeze start.py --target-dir dist --include-module=encodings.utf_8,encodings.latin_1,encodings.ascii

Видно, что импортировал дополнительно модули encodings.utf_8,encodings.latin_1,encodings.ascii

2 комментария:

  1. Иван зачем такие костыли на моем любимом Linux-е? Это как бы не то для чего создается питон. На винде ладно но на линуксе))). Странная короче статья. Заголовок многообещающий. Статья даже как заметка едва натянута.

    ОтветитьУдалить