C exceptions wasRe: Problem compiling C package

Charles-Antoine Gauthier charles.gauthier at nrc.ca
Fri May 26 21:15:54 UTC 2000


<snip> 
> > > Thank you for interest, but it's only my distraction.
> > > As soon as I add my network configuration it linked immediately.
> > > But there are some problems any way..
> > > As far as I remember a time ago we talk about C++ exceptions.
> > > Unfortunatly I did't have enough time to "dig" with them, but in rtems-4.5.0
> > > there are still not working for me.Well, cdtest gives me
> > > *** END OF CONSTRUCTOR/DESTRUCTOR TEST ***
> > > and hangs.

Was that the only output? Did you not get messages about constructors
being run?

> >
> > Well, it looks like C++ exceptions are not working for you.
> > Try to increase the size of the stack of the init task.
> > If that does not help, comment out the exception code
> > and check if the test completes ok. If it does, then
> > you isolated a problem to C++ exceptions.
> 
> Alexey is on a mips target.  This is one configuration in
> which the gcc configuration has not been looked at yet
> for C++ support.
> 
> Rosimildo/Charles G, could you give Alexey an idea of what
> to check for.

Never tried the MIPS, don't know if it is supposed to work or how it
works. Here are things to check for (off the top of my head):

Find out how your toolset expects to call constructors and to set up
exceptions. Does it insert a call to __main or __eabi (or something like
it) in main? If so, is it there? Does it expect a call to __init at
startup time? If so, did you build RTEMS with USE_INIT_FINI to insert
the call to __init at boot time? Do you have the crti.o and crtn.o
files? What about the crtbegin.o and crtend.o files? Does your linker
script accumulate the .init and .fini input sections in the output file? 

Also, make sure to use polled I/O. Cdtest does not run with
interrupt-driven I/O. Usually, it hands after the first few characters
are output.

The MBX8xx port used setjmp/longjmp exception processing. That passes
all tests that we tried so far. The MVME167 port uses DWARF2 traceback
tables. That works too. What does gcc/libgcc for the mips target use?

If this is all mysterious to you, get back to us. I can certainly go
into more details about how the environment is set up. Keep us posted on
your progress. 

> 
> > > And one more question about network:
> > > Do you use loopback interface?
> >
> > I have not use it myself, but I guess recent
> > network demos, has examples on how to use it.
> >
> > Rosimildo.
> 
> --
> Joel Sherrill, Ph.D.             Director of Research & Development
> joel at OARcorp.com                 On-Line Applications Research
> Ask me about RTEMS: a free RTOS  Huntsville AL 35805
>    Support Available             (256) 722-9985

-- 
Charles-Antoine Gauthier
Institute for Information Technology   Institut de technologie de
l'information
National Research Council of Canada    Conseil national de recherches du
Canada



More information about the users mailing list