I am currently trying to build an app with pyinstaller. I have gotten the error The \'google-api-python-client\' distribution was not found and is required by the appl
Literally just ran into this issue on windows, whereas macOS is okay. I'm building with fbs and PyQt5.
google-api-python-client is not a python module, but a resource, which means you cannot inject it as a hidden-import. googleapiclient.model reads the distribution info from google-api-python-client folder as a packaged resource.
Your full error might look closer to this:
...
File "c:\python36\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\googleapiclient\http.py", line 67, in
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 665, in _load_unlocked
File "c:\python36\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\googleapiclient\model.py", line 36, in
File "site-packages\pkg_resources\__init__.py", line 479, in get_distribution
File "site-packages\pkg_resources\__init__.py", line 355, in get_provider
File "site-packages\pkg_resources\__init__.py", line 898, in require
File "site-packages\pkg_resources\__init__.py", line 784, in resolve
pkg_resources.DistributionNotFound: The 'google-api-python-client' distribution was not found and is required by the application
google_api_python_client-*/
/lib/site-packages/ google_api_python_client-*/ into your application's src resource directory. For fbs this can be either:
src/freeze/windows/ (recommended), orsrc/resources/windows/Now when you fbs freeze and subsequently fbs installer your app, the google_api_python_client-*/ will be included in the built app's directory alongside other googleapiclient python libraries, and the error should go away.
See: fbs project directory structure
If your packaging solution does not have similar hooks as above, then:
google_api_python_client-*/ folder from /lib/site-packages/ into the built app's directory (or wherever your compiled python scripts are trying to access google-api-python-client.pythonfbsfreezegoogle-api-python-client