У меня есть тестовый установочный файл, который я сделал для простого скрипта "hello world". У меня есть пакет с именем mytest
, в котором есть функция hello
. Теперь у меня есть очень простой setup.py
. Все работает нормально, если я просто запустил python setup.py install
. Но если я хочу установить библиотеку в домашнюю папку ( python setup.py install --home = / home / blah
), пакет больше не будет доступен (выполняется import mytest
в python дает мне ImportError: Нет модуля с именем mytest
).
Следует ли мне вручную добавить pth-файл в папку site-packages
? Я попробовал (с содержимым / home / blah / lib / python
, куда помещен мой пакет), и импорт mytest
работал нормально. Разве это не должно происходить автоматически? Или я что-то пропустил?
EDIT:
вывод установки:
ago@dellbert:~/py/mytest-0.1$ python setup.py install --home=/home/ago/py/ running install running build running build_py copying src/mytest/mytest.py -> build/lib.linux-x86_64-2.6/mytest running build_scripts copying and adjusting src/main.py -> build/scripts-2.6 running install_lib copying build/lib.linux-x86_64-2.6/mytest/mytest.py -> /home/ago/py//lib/python/mytest byte-compiling /home/ago/py//lib/python/mytest/mytest.py to mytest.pyc running install_scripts copying build/scripts-2.6/main.py -> /home/ago/py//bin changing mode of /home/ago/py//bin/main.py to 755 running install_egg_info Removing /home/ago/py//lib/python/mytest-0.1.egg-info Writing /home/ago/py//lib/python/mytest-0.1.egg-info
и настройки. py:
from distutils.core import setup setup(name='mytest', description='test', author='Ago', author_email='email', version='0.1', package_dir={'mytest': 'src/mytest'}, packages=['mytest'], scripts=['src/main.py'] )
Структура папки:
-src: -mytest: __init__.py mytest.py main.py setup.py
main.py
- это просто исполняемый файл, который импортирует mytest и вызывает функцию для печати hello world. Но я попытался просто запустить import mytest
в python, чтобы посмотреть, установлена ли библиотека.