cxfreeze brak modułu distutils wewnątrz virtualenv
Podczas uruchamiania pliku binarnego cxfreeze z projektu python3.2 otrzymuję następujący błąd wykonania:
/project/dist/project/distutils/__init__.py:13: UserWarning: The virtualenv distutils package at %s appears to be in the same location as the system distutils?
Traceback (most recent call last):
File "/home/chrish/.virtualenvs/project/lib/python3.2/distutils/__init__.py", line 19, in <module>
import dist
ImportError: No module named dist
Odpowiednio jest ich kilkadistutils
wpisy w sekcji brakujących modułów na wyjściu cxfreeze:
? dist imported from distutils
? distutils.ccompiler imported from numpy.distutils.ccompiler
? distutils.cmd imported from setuptools.dist
? distutils.command.build_ext imported from distutils
? distutils.core imported from numpy.distutils.core
...
Próbowałem wymusić włączenie distutils jako modułu, zarówno poprzez importowanie go do mojego głównego pliku Pythona, jak i dodanie go do cxfreezesetup.py
tak jak:
options = {"build_exe": {"packages" : ["distutils"]} },
Żadne podejście nie zadziałało. Wydaje się prawdopodobne, że w jakiś sposób złamałem virtualenv [jak wydaje się fundamentalne i ostrzeżenie dotyczące lokalizacji distutils], powtarzając z czystym virtualenv powtórzył problem.
Warto zauważyć, że zainstalowałem cx-freeze przez uruchomienie$VIRTUAL_ENV/build/cx-freeze/setup.py install
ponieważ nie instaluje się czysto w pip.