[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

XTL on Solaris



Has anyone else tried building/using XTL on Solaris?  What successes have you had with it?

First I had to patch xtl/config.h with endian configuration for sparc to build, no big deal:

...
#elif defined(__sparc) || defined(__sparc__)
#       ifndef __BYTE_ORDER
#               define __BYTE_ORDER __BIG_ENDIAN
#       endif
...

The auto.cpp had an g++ internal compiler error, so I sent gnats a report on that, but the other demos build ok.  Some of them die with a bus error though.
I am using gcc-2.95.2 on Solaris 2.8.  Here is a stack trace

devomniapp{/mfg/groups/ohtse/pkgs/xtl-1.4/examples/tests}: ./raw
Testing ./raw: Bus Error (core dumped)
devomniapp{/mfg/groups/ohtse/pkgs/xtl-1.4/examples/tests}: gdb raw core
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.8"...
Core was generated by `./raw'.
Program terminated with signal 10, Bus Error.
Reading symbols from /usr/lib/libm.so.1...done.
Reading symbols from /usr/lib/libc.so.1...done.
Reading symbols from /usr/lib/libdl.so.1...done.
Reading symbols from /usr/platform/SUNW,Ultra-80/lib/libc_psr.so.1...done.
#0  0x48b88 in void raw_format<mem_buffer>::output_simple<short> (
    this=0xffbee540, data=@0xffbee6f8) at ../../include/xtl/objio.h:101
101                     {*((T*)desire(sizeof(T)))=data;}
(gdb) bt
#0  0x48b88 in void raw_format<mem_buffer>::output_simple<short> (
    this=0xffbee540, data=@0xffbee6f8) at ../../include/xtl/objio.h:101
#1  0x48108 in obj_output<raw_format<mem_buffer>, no_refs>::simple (
    this=0xffbee538, data=@0xffbee6f8) at ../../include/xtl/objio.h:327
#2  0x47e04 in void numbers::composite<obj_output<raw_format<mem_buffer>, no_refs> > (this=0xffbee6f0, stream=@0xffbee538) at ../alltests.h:53
#3  0x47c90 in void composite<obj_output<raw_format<mem_buffer>, no_refs>, numbers> (stream=@0xffbee538, data=@0xffbee6f0) at ../../include/xtl/objio.h:482
#4  0x47a14 in obj_output<raw_format<mem_buffer>, no_refs> & obj_output<raw_format<mem_buffer>, no_refs>::simple<numbers> (this=0xffbee538, data=@0xffbee6f0)
    at ../../include/xtl/objio.h:428
#5  0x47964 in void all_tests::composite<obj_output<raw_format<mem_buffer>, no_refs> > (this=0xffbee6f0, stream=@0xffbee538) at ../alltests.h:392
#6  0x47940 in void composite<obj_output<raw_format<mem_buffer>, no_refs>, all_tests> (stream=@0xffbee538, data=@0xffbee6f0) at ../../include/xtl/objio.h:482
#7  0x478e4 in obj_output<raw_format<mem_buffer>, no_refs> & obj_output<raw_format<mem_buffer>, no_refs>::composite<all_tests> (this=0xffbee538,
    data=@0xffbee6f0) at ../../include/xtl/objio.h:419
#8  0x27d84 in output (buf=0xffbee818 "", to=@0xffbee6f0) at rawo.cpp:22
#9  0x27a14 in main (argc=1, argv=0xffbef82c) at main.cpp:31
(gdb)

In the tests/ subdirectory, giop, oraw, and raw all die on SIGBUS.  The xdr tests work, though.  Any ideas why?  Core and the 'raw' binary are attached.

Casey
 

core

raw

begin:vcard 
n:Marshall;Casey
tel;pager:888.660.9302
tel;work:512.895.8723
x-mozilla-html:TRUE
org:Motorola SPS;Breakaway Test Software Engineering
adr:;;6501 William Cannon Drive West;Austin;TX;78735;USA
version:2.1
email;internet:ra9569@email.sps.mot.com
title:Software Developer
fn:Casey Marshall
end:vcard