Hi,
Does your app SIGSEGV at startup every time? If so, the most likely
cause is you have incompatible bits of Wx. I recently put the work in so
that Wx and Alien::wxWidgets compile on ActiveState's 'PPM builds' again
but this does mean you may have inadvertently updated to them (the Wx
version there is greater than at wxperl.co.uk - I'll have to update them
). You need all binary components to be from the same repo.
(Wx::ActiveX, Wx::TreelistCtrl, Wx::GLCanvas)
Easiest way to check? Install Wx::Demo ( from anywhere ) and see if it
runs. If you are using any of the binary 'add ons', make sure they work
in the demo.
If your app SIGSEGVs during certain execution paths and not at startup
then you should be able to step through with debugger and find the
failure point.
Your ActivePerl comes with a graphical debugger - just start your script
with
perl -d yourscriptname.pl
step through until you get your seg fault. With use of breakpoints
you'll get to the point of failure pretty quickly.
Assuming your first check that all the binary components are compatible
proved OK, a common cause for having wxPerl disappear from under you is
passing an incorrect param to a wxWidgets method. You can pass things to
a wxWidgets method quite easily which will cause the toolkit to crash.
Good Luck
Mark
On 29/11/2011 13:28, Jiří Pavlovský wrote:
Hello,
I have a rather large wxPerl application which "suddenly" started to
SIGSEGV on me. I'm not even aware of any changes that could cause it.
I need some hints as to how to debug it so that I could find out whether
it is something Wx related or not.
I have ActivePerl 5.14 on Windows and I'm using the Wx from wxperl.co.uk
repository.
Thank you,
Jiri