Dosyalarımı özel dizinlere yükleyen bir setup.py oluşturmak istiyorum.python setup.py yapılandırma
/my/prefix/
bin/
script.sh
libexec/
one.py
two.py
...
lib/pythonX.Y/site-packages/
package/...
Benim ilk proje takip ediyor:
/
script.sh
one.py
two.py
...
setup.py
package/...
__init__.py
...
Ne Bunu başarmak için en iyi yol olacağını ben şu sonucu almak istiyorum belli bir önek var? Varsayılan --prefix olduğu altında
python setup.py install --prefix=/my/prefix
Ben "paket" güzel lib/pythonX.Y/site paketleri olarak doğru dizinde yüklü alabilirsiniz
: Ben böyle bir şey ile daha sonra yüklemek mümkün olmak istiyorum yer. Ama script.sh "bin" ve diğer python dosyalarını "libexec" içine almak için temiz bir yol var mı? Bunu başarmak için görebildiğim tek yolu, bu dosyaları setup.py betiğimde elle kopyalamak olacaktır. Olabilir daha temiz ve daha standart bir yolu var mı?
(düzenleme)
Çözüm
böyle setup.py dosyası ile sona erdi:
Tabiisetup(name='mylib',
scripts=['script.sh'],
data_files=[('libexec', ['one.py', 'two.py'])]
)
, sen libexec için tüm piton dosyaları üzerinde yineleme olabilir, ama Sadece ihtiyacım olan 2-3 python dosyası var.
(edit2) Ayrıca, aşağıdaki ile Setup.cfg gelmiş olabilir
:
[install]
prefix=/my/prefix
ve yerine python setup.py install --prefix=/my/prefix
yapmam sadece edebilirsiniz:
python setup.py install
Burada yararlı bazı dokümanlar var: https://docs.python.org/2/install/index.html#alternate-installation-unix-the-prefix-scheme ve burada https: //docs.python. org/3/distutils/introdu.html – Pierz