Exception ignored in: 'grpc._cython.cygrpc.ssl_roots_override_callback' E0212 15:48:20.824000000 28080 src/core/lib/security/security_connector/ssl_utils.cc:585] assertion failed: pem_root_certs != nullptr
구글이 제공하는 api 를 사용해서 exe파일로 만들 시에 위와 같은 오류가 발생하였습니다
인터넷에 나와 있는 모든 해결 방법을 작성해보겠습니다
…\venv\Lib\site-packages\PyInstaller\hooks 폴더에 들어갑니다
해당 파일들을 메모장이나 파이참을 통해 생성합니다
hook-gcloud.py 내부 내용은
from PyInstaller.utils.hooks import copy_metadata datas = copy_metadata('gcloud')
hook-grpc.py 내부 내용은
from PyInstaller.utils.hooks import collect_data_files datas = collect_data_files('grpc')
이렇게 작성을 하고 저장합니다
그리고 ..\venv\Lib\site-packages\ grpc\_cython\_credentials 폴더에 들어갑니다
해당 인증서 파일을 복사해서 pyinstaller를 통해 생성된 exe파일 위치 …\grpc\_cython\_credentials\ 폴더에 그대로 넣습니다
폴더가 없으니 폴더도 그대로 생성합니다
구글 API 를 쓰면 신기방기한 것들이 많지만 exe로 변환 시 신경써야 할 것들이 많아서 귀찮긴 합니다