Ошибка Py2app ImportError: нет модуля с именем httplib2

Я пытаюсь создать отдельное приложение для Mac с помощью py2app. Однако я сталкиваюсь с ошибкой, которая завершает работу программы. По какой-то причине оказывается, что при сборке этого приложения модуль httplib2 не включен. Это команды, которые я запускаю

$ py2applet --make-setup main.py
$ rm -rf build dist
$ python setup.py py2app -A
$ ./dist/main.app/Contents/MacOS/main

Я получаю вывод:

ImportError: No module named httplib2
2018-01-11 15:23:15.719 main[6162:2128478] main Error

Вот как ориентирован мой setup.py:

from setuptools import setup

APP = ['main.py']
DATA_FILES = ['auth', 'sales_report']
OPTIONS = {
    'argv_emulation': True,
    'packages': ['httplib2'],
    'iconfile': 'icon.icns'
}

setup(
    app=APP,
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

У меня установлена ​​библиотека, и скрипт будет работать нормально, если его запустить вручную в терминале. Я что-то упустил в моем файле setup.py? Это ссылка с другого сайта-пакета?


person Sleepy-Z    schedule 11.01.2018    source источник


Ответы (1)


Я бы не упоминал пакет зависимостей внутри OPTIONS, внутри option.
Я бы предпочел упомянуть его в пакетах или install_requires в функции setup().
Следуйте этому doc.

person murphy1310    schedule 12.01.2018
comment
С install_requires я получаю ту же ошибку, с пакетами я получаю ошибку error: package directory 'httplib2' does not exist при запуске процесса установки. - person Sleepy-Z; 12.01.2018
comment
По иронии судьбы, если я импортирую httplib2 в setup.py, он все равно будет работать. - person Sleepy-Z; 12.01.2018