본문 바로가기
Development

Pyinstaller 오류 대응 1.

by wellba 2021. 9. 9.

python 3.8.10을 설치한 아나콘다 가상환경에 

conda install 명령어로 torch GPU버전 버전을 설치한 경우(보통 torch 설치명령어에 cuda설치명령어도 붙어서 실행,torch 설치사이트 참조)

정상적으로 가상환경에서 돌아갔어도 pyinstaller 로 exe를 만든 후 코드를 돌리면 아래와 같은 메세지가 뜨는 경우가 있음.

ImportError: numpy.core.multiarray failed to import

 

torch 1.9.0 cuda10.2 버전을 설치하면 자동으로 numpy가 설치(다른버전도 그럴 듯)되는듯 한데 이 버전이 pyinstaller로 exe를 만들고 작동시키면 에러메세지를 보내는데 numpy 2.12.1 버전이 깔렸던 듯.   

 

이때

torch 공식설치사이트에서 pip 명령어로 torch와 cuda를 설치해준 후

conda install 명령어로 numpy버전을 torch버전과 대응되는 버전(1.19.1)으로 설치해주면 동작했음. 상위버전이 설치되어 있었는데 삭제없이 다른버전을 numpy를 설치했는데 자동으로 해당버전으로 다운그레이드 되지 않았나 추측됨.

 

( pip install 명령어로 numpy를 설치했을시에 작동안되는 경우들이 있어 

numpy는 conda install명령어를 썼음. )

 

 

 

예시).

exe작동시 에러를 일으킨 기존의 conda install 토치 및 cuda 설치명령문.

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch

Previous versions of PyTorch

 

에러제거를 위해 사용한

pip install 토치 및 cuda 설치명령문.

pip3 install torch==1.9.0+cu102 torchvision==0.10.0+cu102 torchaudio===0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

 

https://download.pytorch.org/whl/torch_stable.html

 

download.pytorch.org

 

에러제거를 위해 사용한

conda install numpy 설치명령문.

conda install -c anaconda numpy==1.19.1

 

 

참고 exe를 만들어주는 pyinstaller는 conda install 명령어로 설치했음.pip install 명령어로 pyinstaller를 설치했을때와 차이는 테스트 안해봄. 아래는 pyinstaller 설치시 사용한 명령어.

conda install -c conda-forge pyinstaller