I cannot use pyinstaller to pack , The Error is "RuntimeError: No metadata path found for distribution 'greenlet'."

Viewed 804

I don't know how to solve "RuntimeError: No metadata path found for distribution 'greenlet'." I have searched my code for 'greenlet', but I didn't import the module. my pyinstaller version is 4.4, PyQt5 version is 5.15.4. The modules imported are pandas, PyQt5, os, sys, configparser, json, selenium, time

Traceback (most recent call last):
File "c:\programdata\anaconda3\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\programdata\anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\ProgramData\Anaconda3\Scripts\pyinstaller.exe\__main__.py", line 7, in <module>
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 126, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 758, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 705, in build
exec(code, spec_namespace)
File "C:\Users\28912\Desktop\main.spec", line 19, in <module>
noarchive=False)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 254, in __init__
self.__postinit__()
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\datastruct.py", line 159, in __postinit__
self.assemble()
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 433, in assemble
self.graph.process_post_graph_hooks(self)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\depend\analysis.py", line 373, in process_post_graph_hooks
module_hook.post_graph(analysis)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\depend\imphook.py", line 451, in post_graph
self._load_hook_module()
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\depend\imphook.py", line 409, in _load_hook_module
self.hook_module_name, self.hook_filename)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\compat.py", line 632, in importlib_load_source
return mod_loader.load_module()
File "<frozen importlib._bootstrap_external>", line 399, in _check_name_wrapper
File "<frozen importlib._bootstrap_external>", line 823, in load_module
File "<frozen importlib._bootstrap_external>", line 682, in load_module
File "<frozen importlib._bootstrap>", line 265, in _load_module_shim
File "<frozen importlib._bootstrap>", line 684, in _load
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\hooks\hook-gevent.py", line 25, in <module>
datas += copy_metadata('gevent', recursive=True)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\utils\hooks\__init__.py", line 940, in copy_metadata
dest = _copy_metadata_dest(dist.egg_info, dist.project_name)
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\utils\hooks\__init__.py", line 975, in _copy_metadata_dest
f"No metadata path found for distribution '{project_name}'.")
RuntimeError: No metadata path found for distribution 'greenlet'.

1 Answers

I just started working on pyinstaller and immediately ran into this error. As a result of my efforts, I solved the problem with the following command.

pip  install --ignore-installed greenlet

If you encounter a check_exists error, input the value True to the sysconfig._get_sysconfigdata_name() function in hook-sysconfig.

sysconfig._get_sysconfigdata_name(True)

After doing these steps I solved the problem and produced the exe.

Related