I am trying to bundle an python script using PyInstaller, my platform is IBM System P equipped with Power8 LE CPU, and the OS is Ubuntu 14.04.
After installing from pip and also git, my script still could not be bundled.
The log says:
4346 INFO: checking EXE
4346 INFO: Building EXE because out00-EXE.toc is non existent
4346 INFO: Building EXE from out00-EXE.toc
4346 INFO: Appending archive to ELF section in EXE /home/shane/build/b/b
4368 DEBUG: objcopy returned 1
4368 DEBUG:
4369 DEBUG: objcopy: Unable to recognise the format of the input file `/home/shane/build/b/b'
Traceback (most recent call last):
File "/usr/local/bin/pyinstaller", line 9, in <module>
load_entry_point('PyInstaller==3.3.dev0-gd25657e', 'console_scripts', 'pyinstaller')()
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/__main__.py", line 90, in run
run_build(pyi_config, spec_file, **vars(args))
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/__main__.py", line 46, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/building/build_main.py", line 788, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/building/build_main.py", line 734, in build
exec(text, spec_namespace)
File "<string>", line 26, in <module>
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/building/api.py", line 407, in __init__
self.__postinit__()
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/building/datastruct.py", line 161, in __postinit__
self.assemble()
File "/usr/local/lib/python2.7/dist-packages/PyInstaller-3.3.dev0_gd25657e-py2.7.egg/PyInstaller/building/api.py", line 564, in assemble
raise SystemError("objcopy Failure: %s" % stderr)
SystemError: objcopy Failure: objcopy: Unable to recognise the format of the input file `/home/shane/build/b/b'
It is just a simple "Hello world" script.
Update:
CentOS 7.2 also got the same error.
Please check the file-type of /home/shane/build/b/b and whether it is a valid file. Looks like objcopy is not able to handle this file-type. Maybe you'll need to contact your IBM support on this issue.
I'm closing this as "invalid" since I think this is an operation system problem. If your investigations reveal some PyInstaller issue, feel free to re-open this issue.
Hi shane-Git ,
I found the same issue on ppc64le platform.
This issue was caused by the existed pre-compiled bootloaders.
You should clean all the existed pre-compiled bootloaders, and re-generate it.
Please see the url(http://pyinstaller.readthedocs.io/en/stable/bootloader-building.html) as more reference.
Or you can use my method:
1, git clone https://github.com/pyinstaller/pyinstaller.git
2, cd pyinstaller && git checkout v3.1
3, cd bootloader
4, python ./waf distclean all --no-lsb
5, python waf configure --no-lsb build install
That's all.
Most helpful comment
Hi shane-Git ,
I found the same issue on ppc64le platform.
This issue was caused by the existed pre-compiled bootloaders.
You should clean all the existed pre-compiled bootloaders, and re-generate it.
Please see the url(http://pyinstaller.readthedocs.io/en/stable/bootloader-building.html) as more reference.
Or you can use my method:
1, git clone https://github.com/pyinstaller/pyinstaller.git
2, cd pyinstaller && git checkout v3.1
3, cd bootloader
4, python ./waf distclean all --no-lsb
5, python waf configure --no-lsb build install
That's all.