I have a PyQt (not PySide) application that I build on RedHat, which runs across a range of other Linux systems. I'm using PyInstaller 2.0.

One thing I've found is that, on Linux, PyInstaller will pull in a bunch of system libraries, and you're often better off skipping these and using whatever version is installed on the target machine. I don't remember this leading to any segfaults for us, but we did see a lot of strange behaviors so it might be worth a try.

The libraries we're excluding right now are: libfontconfig.so, libglib-2.0.so, libX11.so, libXext.so, libXau.so, libXdmcp.so, libexpat.so, libXrender.so, libSM.so, libICE.so, libbz2.so, libz.so, libgthread-2.0.so, libcom_err.so, libgssapi_krb5.so, libkrb5.so, libk5crypto.so, libfreetype.so, libpng12.so, libssl.so, libcrypto.so, libgobject-2.0.so, libdrm.so

But that might vary depending on your build configuration. You can test this by manually deleting libraries after running PyInstaller. If that helps, then go back and adjust your build to exclude those libraries.

On 10/04/2013 06:15 AM, Andraz Vrhovec wrote:
Hello, has anybody manage to build app using Qt (PySide preferably, or
PyQt) that run also on machines different from build? I am getting
segfaults when I try to run it on another machines.

Code is simple hello world example from documentation of PySide and
PyQt. I have attached "strace -f" output and sources. Below is gdb output:

===============================================
gdb pyqt-test/dist/pyqt/pyqt
(gdb) set follow-fork-mode child
(gdb) run
...
Program received signal SIGSEGV, Segmentation fault.
[Switching to process 7727]
0x00007ffff7df2b68 in ?? () from /lib64/ld-linux-x86-64.so.2
(gdb) where
#0  0x00007ffff7df2b68 in ?? () from /lib64/ld-linux-x86-64.so.2
#1  0x9142a1d45027df64 in ?? ()
Cannot access memory at address 0x21c021d46fd824f0
================================================
gdb pyside-test/dist/pyside/pyside
(gdb) set follow-fork-mode child
(gdb) run
...
Program received signal SIGSEGV, Segmentation fault.
[Switching to process 7709]
0x00007ffff7df2b68 in ?? () from /lib64/ld-linux-x86-64.so.2
(gdb) where
#0  0x00007ffff7df2b68 in ?? () from /lib64/ld-linux-x86-64.so.2
#1  0x1f8d291dc7c05415 in ?? ()
Cannot access memory at address 0xe0bd291df83faf8f

Build machine is Ubuntu 12.04 amd64 and segfaults occur on Ubuntu 13.04
amd64. It seems to me as Qt issue, as simple scripts (print "Hello")
works just fine (so bootloader is ok i guess). Also scripts using pygtk
run, but have other issues (no fonts). Has anyone ever had a successful
build of Qt application that run on other machine than build?

Qt info:
./libQtCore.so.4
This is the QtCore library version 4.8.1
Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
Contact: Nokia Corporation ([email protected])

Build key:           x86_64 linux g++-4 full-config
Compat build key:    | x86_64 Linux g++-4 full-config |
Build date:          2013-02-06
Installation prefix: /usr
Library path:        /usr/lib/x86_64-linux-gnu
Include path:        /usr/include/qt4
Processor features:  mmx sse sse2 cmov sse3 ssse3 sse4.1 sse4.2 avx

Most of the other .so file in dist directory give segfault, is that
expected?


--
You received this message because you are subscribed to the Google
Groups "PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to