Trochę mnie przeraża proces instalacji pakietu python. Jaka jest różnica między pakietami zainstalowanymi w katalogu dist-packages a katalogiem site-packages?
Trochę mnie przeraża proces instalacji pakietu python. Jaka jest różnica między pakietami zainstalowanymi w katalogu dist-packages a katalogiem site-packages?
dist-Package to specyficzna dla Debiana konwencja, która występuje również w jej pochodnych, takich jak Ubuntu. Moduły są instalowane w pakietach dystrybucyjnych, gdy pochodzą z menedżera pakietów Debiana w tej lokalizacji:
/usr/lib/python2.7/dist-packages
Ponieważ easy_install
i pip
są instalowane z menedżera pakietów, używają również pakietów dist, ale umieszczają pakiety tutaj:
/usr/local/lib/python2.7/dist-packages
pakiety dist zamiast pakietów site. Zewnętrzne oprogramowanie Python instalowane z pakietów Debiana przechodzi na pakiety dist, a nie pakiety site. Ma to na celu zmniejszenie konfliktu między systemowym Pythonem a dowolną kompilacją Pythona ze źródła, którą można zainstalować ręcznie.
Oznacza to, że jeśli ręcznie zainstalujesz Python ze źródła, użyje on katalogu pakietów witryny. Pozwala to zachować osobne instalacje, zwłaszcza że Debian i Ubuntu polegają na systemowej wersji Pythona dla wielu narzędzi systemowych.
dist-packages
jest katalogiem specyficznym dla Debiana, w którymapt
znajomi instalują swoje rzeczy, isite-packages
jest standardempip
katalogiem .Problem w tym, co się dzieje, gdy różne wersje tego samego pakietu są obecne w różnych katalogach?
Moim rozwiązaniem tego problemu jest utworzenie
dist-packages
dowiązania symbolicznego dosite-packages
:(jeśli nie korzystasz z narzędzi GNU, usuń
-v
opcję).źródło