dexter1 wrote:
I have a distinct feeling that this crapping out of SDL is due to esdl having -lpthread, because neko_sdl has -lpthread as well, but erlang is compiled without threading. Trying to turn on threading breaks compile with a malfunctioning 'beam' executable:
Code:
Select all
irene /usr/local/src/otp_src_R10B-2/bin/mips-sgi-irix6.5> beam
Failed to create thread: Operation not permitted (1)
Abort (core dumped)
... while a non-threaded 'beam' does this (a normal crash report):
Code:
Select all
mech044 /usr/local/src/otp_src_R10B-2/bin/mips-sgi-irix6.5> beam
{"init terminating in do_boot",'no -root flag'}
Crash dump was written to: erl_crash.dump
init terminating in do_boot (no -root flag)
This merits some investigatoin why the erlang --enable-threads produces wrong code...
Oh, and i indeed have no icons on my impact system, but they appear on the O2 just fine...
OK, I finally have a second terminal (a Mac) set up at home. So, a year later, I'm finally able to put some small amount of time towards this.
First, about the black icons. The icons are being drawn via a textured quad. The textures are GL_RGB, loaded from BMPs. I haven't found if Wings is expanding the textures to a power of two or not, but wouldn't they have to, even on linux? Something sounds familiar about this. Something along the lines of other people porting linux software to Irix having the same sort of issue with texturing. But, I'm having trouble finding references to it on google groups.
Also, I found that the menu operations (lighting, extrusions, and beveling, perhaps more. I lost the comprehensive list I wrote out previously and haven't retested everything) that cause the lock ups will also caused lockups if executed by keystroke rather than menu selection.
When the lock up occurs, the usr CPU load isn't very high, but the sys CPU load is very high. I have wings positioned so that I can see gr_osview, and it keeps updating normally during the trouble. As gandalf points out, remotely killing beam restores the desktop without having to log out and back in. Based on the CPU information, I think that the only reason things seem locked up is perhaps because wings always does wierd things to the mouse pointer during operations, and thus nothing is really locked except wings but you can't use the pointer to change window focus. That may be a crappy theory.
Anyway, I'm in the middle of rebuilding the latest OTP, Esdl, and Wings (OTP and ESDL are built, but I haven't run the esdl tests or built wings) as of this morning. I now can read erlang code enough to figure out what is where, but I still don't really know erlang, and I especially don't know how to use the debugger.
Dexter1, do you think it would be possible to build SDL and esdl without pthreads? I'm digging around to look into that. If not, I may join some erlang mailing list and try asking about why --enable-threads won't work.