How to run pyinstaller correctly on cygwin? - python

I want to generate a .exe file from a python file but when i try to use pyinstaller I get an error "Python Library not found". I'm using python 2.7.10 and I'm using virtualenv as well. Should I type the path /usr/bin/python on the pyinstaller command or maybe the python path on the virtualenv?
EDIT: errors
16769 WARNING: lib not found: api-ms-win-core-kernel32-private-l1-1-1.dll dependency of C:\Windows/system32/user32.dll
16910 WARNING: lib not found: api-ms-win-core-privateprofile-l1-1-1.dll dependency of C:\Windows/system32/user32.dll
17413 WARNING: lib not found: api-ms-win-core-privateprofile-l1-1-1.dll dependency of C:\Windows/system32/GDI32.dll
Traceback (most recent call last):
File "/home/paulo-desktop/ENV/bin/pyinstaller", line 11, in <module> sys.exit(run())
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/main.py", line 88, in run
run_build(opts, spec_file, pyi_config)
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/main.py", line 46, in run_build
PyInstaller.build.main(pyi_config, spec_file, **opts.__dict__)
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 1924, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 1873, in build
execfile(spec)
File "/home/paulo-desktop/github/cmd3test/cmd3/pyinstaller/shell.spec", line 6, in <module>
runtime_hooks=None)
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 446, in __init__
self.__postinit__()
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 309, in __postinit__
self.assemble()
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 677, in assemble
self._check_python_library(binaries)
File "/home/paulo-desktop/ENV/lib/python2.7/site-packages/PyInstaller/build.py", line 727, in _check_python_library
raise IOError("Python library not found!")
IOError: Python library not found!
(ENV)

I use cygwin too and I encountered this issue as well. I re-ran the cygwin installer and just added the python installer from there. It will be there once you run the app again.

Related

ImportError: cannot import name 'modname_tkinter' from 'PyInstaller.compat'

PyInstaller: 5.0.1
Python: 3.7.9
output: https://gist.github.com/phonebotco/eee157bd12a3b9f0792b2fcab9478636
I am trying to compilate my code with this command:
pyinstaller --onefile -F --uac-admin --icon="favicon_phonebot.ico" --exclude-module modname_tkinter --debug=all PhoneBot.py
I get this error message:
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\_pyinstaller_hooks_contrib\hooks\stdhooks\hook-IPython.py", line 16, in <module>
from PyInstaller.compat import modname_tkinter, is_win, is_darwin
ImportError: cannot import name 'modname_tkinter' from 'PyInstaller.compat' (c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\compat.py)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "c:\users\gauth\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\users\gauth\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\gauth\AppData\Local\Programs\Python\Python37\Scripts\pyinstaller.exe\__main__.py", line 7, in <module>
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\__main__.py", line 178, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\__main__.py", line 59, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\building\build_main.py", line 845, in main
build(specfile, distpath, workpath, clean_build)
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\building\build_main.py", line 767, in build
exec(code, spec_namespace)
File "H:\Mon Drive\Phonebot\Phonebot_debug3\PhoneBot.spec", line 20, in <module>
noarchive=False,
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\building\build_main.py", line 319, in __init__
self.__postinit__()
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\building\datastruct.py", line 173, in __postinit__
self.assemble()
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\building\build_main.py", line 487, in assemble
self.graph.process_post_graph_hooks(self)
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\depend\analysis.py", line 326, in process_post_graph_hooks
module_hook.post_graph(analysis)
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\depend\imphook.py", line 398, in post_graph
self._load_hook_module()
File "c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\depend\imphook.py", line 364, in _load_hook_module
raise ImportErrorWhenRunningHook(self.hook_module_name, self.hook_filename)
PyInstaller.exceptions.ImportErrorWhenRunningHook: Failed to import module __PyInstaller_hooks_0_IPython required by hook for module c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\_pyinstaller_hooks_contrib\hooks\stdhooks\hook-IPython.py. Please check whether module __PyInstaller_hooks_0_IPython actually exists and whether the hook is compatible with your version of c:\users\gauth\appdata\local\programs\python\python37\lib\site-packages\_pyinstaller_hooks_contrib\hooks\stdhooks\hook-IPython.py: You might want to read more about hooks in the manual and provide a pull-request to improve PyInstaller.
H:\Mon Drive\Phonebot\Phonebot_debug3>pyinstaller --onefile -F --uac-admin --icon="favicon_phonebot.ico" --exclude-module modname_tkinter --debug=all PhoneBot.py
The weird thing is I don't use Tkinter in my code. Can anyone help me please fix this issue?
Thanks
I was using Pyinstaller version 5.1 and had similar error. After I downgraded Pyinstaller to version 4.5.1 the problem was solved.
pip install -U pyinstaller-hooks-contrib
I was using an outdated version of pyinstaller-hooks-contrib - the offending import line in that IPython hook has been removed over a year ago.
for me helped update kivy lib to the last version

Pyinstaller not building because permission denied to USS.jtx

I am getting the following error when using the pyinstaller (pyinstaller --onefile main.py --name pbot.exe) on windows:
329097 INFO: checking PKG
329097 INFO: Building PKG because PKG-00.toc is non existent
329099 INFO: Building PKG (CArchive) PKG-00.pkg
Cannot find ('nltk_data\AppData\Local\Comms\UnistoreDB\USS.jtx', 'C:\Users\adwaith\AppData\Local\Comms\UnistoreDB\USS.jtx', 1, 'x')
Traceback (most recent call last):
File "c:\users\adwaith\anaconda3\lib\runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "c:\users\adwaith\anaconda3\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "C:\Users\adwaith\anaconda3\Scripts\pyinstaller.exe\__main__.py", line 7, in <module>
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 114, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 734, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 681, in build
exec(code, spec_namespace)
File "C:\Users\adwaith\Documents\pbot_win\pbot.spec", line 20, in <module>
exe = EXE(pyz,
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\api.py", line 433, in __init__
self.pkg = PKG(self.toc, cdict=kwargs.get('cdict', None),
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\api.py", line 199, in __init__
self.__postinit__()
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\datastruct.py", line 160, in __postinit__
self.assemble()
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\building\api.py", line 283, in assemble
archive = CArchiveWriter(self.name, srctoc + mytoc,
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\archive\writers.py", line 336, in __init__
super(CArchiveWriter, self).__init__(archive_path, logical_toc)
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\archive\writers.py", line 63, in __init__
self._add_from_table_of_contents(logical_toc)
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\archive\writers.py", line 88, in _add_from_table_of_contents
self.add(toc_entry) # The guts of the archive.
File "c:\users\adwaith\anaconda3\lib\site-packages\PyInstaller\archive\writers.py", line 383, in add
fh = open(pathnm, 'rb')
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\adwaith\\AppData\\Local\\Comms\\UnistoreDB\\USS.jtx'
I have checked that the location and the USS.jtx files exist on my machine. Also, I tried searching about USS.jtx file but it keeps showing up in the context of git. I do have a Github desktop, so I thought maybe using pyinstaller from inside the git repo is causing problems. I then copied the entire repo to another location on my computer, but the problem persists.
I'm not normally a Windows guy, but I saw your post on Linkedin about this.
It seems to me that the file exists, but you don't have permission to read it. Have a look at this article and ensure that you have permission to read the file.
A quick and dirty way to check this is to just try opening the file in notepad or whatever the basic text editor is called in Windows.
If notepad gives an error on trying to open the file, then you need to fix the permissions. If notepad can open it without any changes to the permissions, then you have some oddness in how you are running pyinstaller.

TypeError: expected str, bytes or os.PathLike object, not NoneType _ while using pyinstaller

I wrote 3 python scripts and all of them are working fine when I run them with python3.6. Now I wanted to build executable files for each of these scripts using pyinstaller. Please Note that I cannot install pyinstaller on the computer due to the rules in my institution, so I downloaded the pyinstaller package and run the pyinstaller.py with python3.6 from the directory and it works fine.
The problem which I'm facing right now is the following:
Building the .exe works for one script without problems, but if I try to build the other 2 scripts I get the following error :
Traceback (most recent call last):
File "pyinstaller.py", line 15, in <module>
run()
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/__main__.py", line 94, in run
run_build(pyi_config, spec_file, **vars(args))
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/__main__.py", line 46, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/build_main.py", line 791, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/build_main.py", line 737, in build
exec(text, spec_namespace)
File "<string>", line 22, in <module>
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/build_main.py", line 213, in __init__
self.__postinit__()
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/datastruct.py", line 161, in __postinit__
self.assemble()
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/build_main.py", line 472, in assemble
module_hook.post_graph()
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/imphook.py", line 414, in post_graph
self._process_hook_func()
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/building/imphook.py", line 433, in _process_hook_func
self._hook_module.hook(hook_api)
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/hooks/hook-_tkinter.py", line 245, in hook
hook_api.add_datas(_collect_tcl_tk_files(hook_api))
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/hooks/hook-_tkinter.py", line 208, in _collect_tcl_tk_files
tcl_root, tk_root = _find_tcl_tk(hook_api)
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/hooks/hook-_tkinter.py", line 159, in _find_tcl_tk
bins = selectImports(hook_api.__file__)
File "/home/akaroui/PyInstaller-3.3.1/PyInstaller/depend/bindepend.py", line 493, in selectImports
xtrapath = [os.path.dirname(pth)]
File "/usr/local/python/3.6.1/lib/python3.6/posixpath.py", line 154, in dirname
p = os.fspath(p)
TypeError: expected str, bytes or os.PathLike object, not NoneType
Does anyone have an idea how can I fix this problem ?
Here are more information :
Using Linux - Python3.6
the Scripts where I get the problem do open files and modify their content, and also run some pdflatex-scripts. They are as I mentioned working fine when I run them with Python, the only problem is building the .exe from them.

PyInstaller error with python script that uses OpenCV and VPython (DOS Header magic not found)

I am trying to generate exe file from a script that uses openCV and Vpython however I am having problems with it. I tried using pyinstaller with a simple print script it worked fine. when I try it with openCV only script it did not work and the same with Vpython only script, and both. the error I am getting is this:
Traceback (most recent call last):
File "C:\Python27\Scripts\pyinstaller-script.py", line 11, in <module>
load_entry_point('PyInstaller==3.2.1', 'console_scripts', 'pyinstaller')()
File "c:\python27\lib\site-packages\PyInstaller\__main__.py", line 90, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\python27\lib\site-packages\PyInstaller\__main__.py", line 46, in run_
build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line
788, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'
))
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line
734, in build
exec(text, spec_namespace)
File "<string>", line 16, in <module>
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line
212, in __init__
self.__postinit__()
File "c:\python27\lib\site-packages\PyInstaller\building\datastruct.py", line
161, in __postinit__
self.assemble()
File "c:\python27\lib\site-packages\PyInstaller\building\build_main.py", line
535, in assemble
redirects=self.binding_redirects))
File "c:\python27\lib\site-packages\PyInstaller\depend\bindepend.py", line 227
, in Dependencies
for lib, npth in selectImports(pth, xtrapath):
File "c:\python27\lib\site-packages\PyInstaller\depend\bindepend.py", line 510
, in selectImports
npth = getfullnameof(lib, xtrapath)
File "c:\python27\lib\site-packages\PyInstaller\depend\bindepend.py", line 82,
in getfullnameof
if os.path.exists(npth) and matchDLLArch(npth):
File "c:\python27\lib\site-packages\PyInstaller\depend\bindepend.py", line 194
, in matchDLLArch
pe = pefile.PE(filename, fast_load=True)
File "c:\python27\lib\site-packages\PyInstaller\lib\pefile.py", line 1720, in
__init__
self.__parse__(name, data, fast_load)
File "c:\python27\lib\site-packages\PyInstaller\lib\pefile.py", line 1799, in
__parse__
raise PEFormatError('DOS Header magic not found.')
PyInstaller.lib.pefile.PEFormatError: 'DOS Header magic not found.'
I have:
PyInstaller: 3.2.1
Python: 2.7.13 x64
Platform: Windows-8.1 x64
what to do?
A better place to pose VPython questions is in the VPython forum at
https://groups.google.com/forum/?fromgroups&hl=en#!forum/vpython-users
There you might find VPython users who have experience with PyInstaller (I don't).

pyinstaller build error or not run script

all
i have one python file,now i want use pyinstaller to build bin file,but pyinstall report this error
Traceback (most recent call last):
File "/usr/local/bin/pyi-build", line 11, in <module>
sys.exit(run())
File "/usr/local/lib/python2.7/site-packages/PyInstaller/cliutils/build.py", line 37, in run
PyInstaller.build.main(None, args[0], **opts.__dict__)
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 1924, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 1873, in build
execfile(spec)
File "linux_server_script.spec", line 6, in <module>
runtime_hooks=None)
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 446, in __init__
self.__postinit__()
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 309, in __postinit__
self.assemble()
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 677, in assemble
self._check_python_library(binaries)
File "/usr/local/lib/python2.7/site-packages/PyInstaller/build.py", line 727, in _check_python_library
raise IOError("Python library not found!")
IOError: Python library not found!
my python fisrt build has no use --enable-shared,now i recompile python and add option "--enable-shared",i copy libpython*.so* to /usr/local/lib/,but the problem also.
if my export LD_LIBRARY_PATH=/usr/local/lib,can build success,but when i run script
[pyinstall#zixun-01 tmp]$ ./linux_server_script
Error loading Python lib '/tmp/libpython2.7.so.1.0': /tmp/libpython2.7.so.1.0: cannot open shared object file: No such file or directory
it was python lib error
pls del python clean and rebuild python 2.7 use "./configure --enable-shared"
and use pyinstall option "-p /usr/local/lib" to build

Categories

Resources