drzewo Projekt:Konfigurowanie setup.py dla opakowania pojedynczego pliku .py i pojedynczym pliku danych bez konieczności tworzenia żadnych folderów
$.
├── happy_birthday-art.txt
├── happy_birthday.py
├── MANIFEST.in
├── README.rst
└── setup.py
setup.py
from setuptools import setup
setup(
name='Happy_birthday',
py_modules=['happy_birthday'],
data_files=['happy_birthday-art.txt'],
entry_points={
'console_scripts': ['happy_birthday = happy_birthday:main', ],},
long_description=open('README.rst').read(),
)
Teraz, gdy wykonuję python setup.py sdist
, a następnie pip install
utworzony plik .tar.gz
w środowisku wirtualnym, pojawia się następujący komunikat:
warning: install_data: setup script did not provide a directory for 'happy-birthday-art.txt' -- installing right in '/home/username/.virtualenvs/happy_birthday'
Program korzysta z tego pliku .txt, więc kończy się niepowodzeniem, gdy próbuje go uruchomić. Nie ma potrzeby instalowania happy_birthday-art.txt
w oddzielnym folderze. Chcę zainstalować go w folderze, w którym jest zainstalowany happy_birthday.py
. Ponadto nie chcę używać bezwzględnych ścieżek w setup.py
. Jak najlepiej skonfigurować mój plik setup.py
?
Roszczenie jest to, że awkardness jest od lokalizacji http: // stackoverflow. com/a/5423147/1240268 (która jest bezpłatna, jeśli masz ją w pakiecie) –