Comments you submit will be routed for moderation. If you have an account, please log in first.
Modify

Ticket #204 (new defect)

Opened 3 years ago

Last modified 5 weeks ago

Segmentation fault when using executable on another machine

Reported by: anonymous Owned by: giovannibajo
Priority: normal Milestone:
Component: PyInstaller Version: 1.4
Severity: normal Keywords: pyInstaller, commands, segmentationFault, ant
Cc:

Description

Hi, I'm facing a pretty peculiar issue. I'm using pyInstaller to create linux binaries. My build and target system are identical in terms of OS, hardware etc.

Once I create my executable (using shared python to handle dependencies better), the executable works perfectly fine on my local machine. When I run this executable on another machine, it fails on a particular command :

status,out = commands.getstatusoutput("ant -f build.xml")

Commands is a python package which I use to run unix commands from my python program.

The program still continues and finishes, but the previous command returns a segmentation fault.

if i run my python program on this target machine using python test.py, it works fine again. I have attached my spec file to the bug.

Is there anyway I can debug why I get a segmentationFault in the executable ? Version of pyInstaller : 1.4

Attachments

runSeleniumLRG.spec (721 bytes) - added by sms169@… 3 years ago.

Change History

Changed 3 years ago by sms169@…

comment:1 Changed 2 years ago by htgoebel

  • Priority changed from high to normal
  • Severity changed from blocker to normal

What exactly is seg-faulting?

If you program runSeleniumLRG would seg-fault, it would be terminated abnormally and not continue to run. So I assume, it may be the ant program on the target machine. Please try to verify this:

  1. build *minimal* example only containing this line of code (if files like build.xml are needed, but them into the dist directory)
  2. try another version of ant
  3. try debugging with strace -f my-minimal-example >/tmp/my.log 2>&1

Post the results here

comment:2 Changed 5 weeks ago by dhyams

Suspect maybe "ant" dynamically links to one of the .so's that is packaged up by PyInstaller?. Run "ldd" on "ant" on the target machine, to see what "ant" depends on, and then compare that list to the .so's that are packaged by PyInstaller?.

It could be that the version of the .so that ant normally links to on the target machine, is not the same as the version of the .so that PyInstaller? packaged up on the source machine.

View

Add a comment

Modify Ticket

Action
as new
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.