MaxIDE segmentation fault

Archives Forums/Linux Discussion/MaxIDE segmentation fault

Sonari Eclipsi Onimari(Posted 2010) [#1]
Okay, after downloading all dependencies on another post here and running a script, I still am unable to get the MaxIDE to run. I am running Ubuntu 10.04 32 bit. Any ideas?


jondecker76(Posted 2010) [#2]
I'm running Ubuntu 10.04 64-bit with no problems at all. I do recall seeing mention that the new version 1.40 eliminates some crashing bug on Linux - I'd make sure you have the latest update to start with.


markcw(Posted 2010) [#3]
What version of BlitzMax are you using? Try a clean install of another version such as v1.39.


SebHoll(Posted 2010) [#4]
MaxIDE 1.39 does have known SegFault'ing issues with 10.04. MaxIDE 1.40 is definitely a better shot on Linux.


Sonari Eclipsi Onimari(Posted 2010) [#5]
Tried MaxIDE 1.40 and its the same thing. Would it have anything to do with FLTK in Gnome?


skidracer(Posted 2010) [#6]
Try launching maxide from the console:

cd ~/blitzmax
./maxide


which may tell you more about what is failing.

do you have multiple monitors or compiz enabled?

Also you can test the BlitzMax compiler is functional from console (with correct permissions) by changing dir to the blitzmax/bin folder and typing ./bcc


Sonari Eclipsi Onimari(Posted 2010) [#7]
I tried from the command line and it literally gives me "segmentation error". Thats literally it. BCC works fine. I am currently using the Gedit plugin and hate it with a passion.

By the way, I appreciate all the help.

-SEO


Sonari Eclipsi Onimari(Posted 2010) [#8]
I tried from the command line and it literally gives me "segmentation error". Thats literally it. BCC works fine. I am currently using the Gedit plugin and hate it with a passion.

In more detail, I did try the community version and it is giving me the following error when attempting to launch the IDE:

-laptop:~/Programs/BlitzMax$ ./MaxIDE
./MaxIDE: error while loading shared libraries: libgtkembedmoz.so.0d: cannot open shared object file: No such file or directory



When I try the standard 1.40, this is the output:

-laptop:~/Downloads/BlitzMax$ ./MaxIDE
Segmentation fault




By the way, I appreciate all the help.

-SEO


SebHoll(Posted 2010) [#9]
How's your GDB knowledge? If you own MaxGUI, you could try compiling a debug build of MaxID (would require a tweak to BMK first though to stop C debugging symbols from being stripped) and then running with GDB to trap the segfault?

Unfortunately I don't have access to a Linux computer for over a month, so I can't send you one myself.


markcw(Posted 2010) [#10]
-laptop:~/Programs/BlitzMax$ ./MaxIDE
./MaxIDE: error while loading shared libraries: libgtkembedmoz.so.0d: cannot open shared object file: No such file or directory

Try installing the package "libxul0d".

Use this to check you have all Bmx dependencies installed.
sudo apt-get install gcc g++ libxxf86vm-dev libglu1-mesa-dev x11proto-core-dev x11proto-gl-dev x11proto-kb-dev libasound2-dev build-essential libidn11-dev libxft-dev x11proto-xext-dev libxpm-dev


Also check MaxIDE and the files in "BlitzMax/bin" to see if they have execute permissions (right-click > properties > permissions tab > execute checkbox).


Sonari Eclipsi Onimari(Posted 2010) [#11]
Unfortunately, that lib isn't available for install in 10.04 so that's not an option. All other Linz are installed.


skidracer(Posted 2010) [#12]
I have uploaded a debug version of MaxIDE built with latest sources here that may help us work out what is going on:

http://max-gui.googlecode.com/files/maxide.debug.tar.gz


Sonari Eclipsi Onimari(Posted 2010) [#13]
allen@allen-laptop:~$ cd Programs/BlitzMax
allen@allen-laptop:~/Programs/BlitzMax$ ./maxide.debug
Segmentation fault
allen@allen-laptop:~/Programs/BlitzMax$

Thats all it gives me. I've debugged errors before but when this is literally the only output I get, tis rather frustrating. Lol. I did try the getlibs program and I get this:

allen@allen-laptop:~/Programs/BlitzMax$ getlibs maxide.debug
This application isn't missing any dependencies

Again, I greatly appreciate the help.


skidracer(Posted 2010) [#14]
Maybe try running the dependency script again from the console and watch for any errors. Also if you can try "gdb maxide.debug" and then "r" to run, I'm curious if that gives any more info.


Sonari Eclipsi Onimari(Posted 2010) [#15]
allen@allen-laptop:~$ cd Programs/BlitzMax
allen@allen-laptop:~/Programs/BlitzMax$ gdb maxide.debug
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/allen/Programs/BlitzMax/maxide.debug...(no debugging symbols found)...done.
(gdb) r
Starting program: /home/allen/Programs/BlitzMax/maxide.debug
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0xb7af97a0 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb)

From this output, is there any suggestions at this point?
I think it may be with the C Libraries but...

Once again, Thanks


Sonari Eclipsi Onimari(Posted 2010) [#16]
Updated debugging info:

allen@allen-laptop:~/Programs/BlitzMax$ gdb maxide.debug
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/allen/Programs/BlitzMax/maxide.debug...(no debugging symbols found)...done.
(gdb) r
Starting program: /home/allen/Programs/BlitzMax/maxide.debug
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
__strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen.S:99
99 ../sysdeps/i386/i686/multiarch/strlen.S: No such file or directory.
in ../sysdeps/i386/i686/multiarch/strlen.S
(gdb)

Googleing shows that this is common with XFCE so I'm installing the XFCE libraries. I'll aprise you of progress or failure.

THanks


skidracer(Posted 2010) [#17]
Hi Sonari,

Anything reading the length of a string with null pointer will I assume cause this crash.

Can you also include output of gdb backtrace command "bt" once it has crashed, thanks.

Also, you could try removing /renaming the ini file located in $BlitzMax/cfg folder.


Sonari Eclipsi Onimari(Posted 2010) [#18]
Program received signal SIGSEGV, Segmentation fault.
__strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen.S:99
99 ../sysdeps/i386/i686/multiarch/strlen.S: No such file or directory.
in ../sysdeps/i386/i686/multiarch/strlen.S
(gdb) bt
#0 __strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen.S:99
#1 0x080dfb7b in ?? ()
#2 0x080e00c6 in ?? ()
#3 0x0804e6ff in ?? ()
#4 0x0817e1e9 in ?? ()
#5 0x0812955f in ?? ()
#6 0x0817de10 in ?? ()
#7 0x0817dbd4 in ?? ()
#8 0x0817db7a in ?? ()
#9 0x0812ca8e in ?? ()
#10 0x0812af2a in ?? ()
#11 0x0804dd78 in ?? ()
#12 0xb7a9cbd6 in __libc_start_main (main=0x804dd34, argc=1,
ubp_av=0xbffff4b4, init=0x812adf0, fini=0x812ade0,
rtld_fini=0xb7ff10c0 <_dl_fini>, stack_end=0xbffff4ac) at libc-start.c:226
#13 0x0804dca1 in ?? ()
(gdb)


There is no /cfg folder in my BMX folder, by the way.

Thanks once again.


markcw(Posted 2010) [#19]
There is no /cfg folder in my BMX folder

Well there should be.

Try creating a cfg folder and see if that fixes it. If that doesn't work then try creating this file manually in cfg folder:

ide.ini


Also, try putting your BlitzMax folder in your home/username folder instead of in Programs.


Sonari Eclipsi Onimari(Posted 2010) [#20]
allen@allen-laptop:~/BlitzMax$ gdb maxide.debug
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/allen/BlitzMax/maxide.debug...(no debugging symbols found)...done.
(gdb) r
Starting program: /home/allen/BlitzMax/maxide.debug
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
__strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen.S:99
99 ../sysdeps/i386/i686/multiarch/strlen.S: No such file or directory.
in ../sysdeps/i386/i686/multiarch/strlen.S
(gdb) bt
#0 __strlen_sse2 () at ../sysdeps/i386/i686/multiarch/strlen.S:99
#1 0x080dfb7b in ?? ()
#2 0x080e00c6 in ?? ()
#3 0x0804e6ff in ?? ()
#4 0x0817e1e9 in ?? ()
#5 0x0812955f in ?? ()
#6 0x0817de10 in ?? ()
#7 0x0817dbd4 in ?? ()
#8 0x0817db7a in ?? ()
#9 0x0812ca8e in ?? ()
#10 0x0812af2a in ?? ()
#11 0x0804dd78 in ?? ()
#12 0xb7a9cbd6 in __libc_start_main (main=0x804dd34, argc=1,
ubp_av=0xbffff4d4, init=0x812adf0, fini=0x812ade0,
rtld_fini=0xb7ff10c0 <_dl_fini>, stack_end=0xbffff4cc) at libc-start.c:226
#13 0x0804dca1 in ?? ()
(gdb) ^Z
[2]+ Stopped gdb maxide.debug
allen@allen-laptop:~/BlitzMax$



Did that. This is the output still. Its odd that all the ones I've downloaded never came with a /cfg folder.


markcw(Posted 2010) [#21]
Its odd that all the ones I've downloaded never came with a /cfg folder.


The IDE is supposed to create it.

Maybe it is conflicting dependencies. Try running this to check you don't have the 64bit libs installed:
sudo apt-get install gcc-multilib g++-multilib


Edit: re libxul0d:
Unfortunately, that lib isn't available for install in 10.04 so that's not an option. All other Linz are installed.


You could try installing it yourself with:
sudo apt-get install libxul0d


Also make sure you have the universe repository enabled ie. check 'Software Sources'. If that doesn't work try xulrunner instead.


Sonari Eclipsi Onimari(Posted 2010) [#22]
All those except libxul0d are installed and I have xulrunner installed by default. I'm running 32 bit Ubuntu, btw.

I don't know why the IDE won't even start Lol.


markcw(Posted 2010) [#23]
Well you shouldn't have the 64bit libs installed if you're in 32bit so try removing them with:
sudo apt-get remove gcc-multilib g++-multilib



Sonari Eclipsi Onimari(Posted 2010) [#24]
Tried removing the 64 bit libs and no luck.


shinkiro1(Posted 2010) [#25]
If you are really out of luck and can't get the IDE to start up give gedit a try (http://www.blitzbasic.com/Community/posts.php?topic=91279)
You said compiling is functioning properly, so it should work.

Have you tried to rerun the dependency installer from skidracer?


Sonari Eclipsi Onimari(Posted 2010) [#26]
Tried that. The reason I hate the gedit plugin is because I cannot get it to save then compile unless I save it as a certain name pre-specified. Thanks all the same.


skidracer(Posted 2010) [#27]
I have uploaded a new maxide.debug.noxft.tar.gz file for you to test here:

https://sourceforge.net/project/admin/explorer.php?group_id=338391

It has disabled new xft font system which is possible cause of your problems and also will log more messages to console if it runs at all.

If it fails to produce anything but segment faults you may want to try installing the MaxGUI module from same location and after building modules and docs try say the CreateWindow example in the docs from your current BlitzMax setup.


Sonari Eclipsi Onimari(Posted 2010) [#28]
Problem being is that I don't have permission to get the new file.


markcw(Posted 2010) [#29]
http://sourceforge.net/projects/maxgui/files/


Sonari Eclipsi Onimari(Posted 2010) [#30]
BEAUTIFUL!!!! WORKS LIKE A CHARM!!!

So in detail, what is the xft and why would a typical 32bit Ubuntu system not be able to handle it?