Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Nov 2001 14:26:28 -0800
From:      Terry Lambert <tlambert2@mindspring.com>
To:        "PSI, Mike Smith" <mlsmith@mitre.org>
Cc:        hackers@freebsd.org
Subject:   Re: C++ and ISO sockets
Message-ID:  <3BF19E14.C6105E35@mindspring.com>
References:  <3BF179CA.14EC4554@mitre.org>

next in thread | previous in thread | raw e-mail | index | archive | help
"PSI, Mike Smith" wrote:
> I am using FreeBSD 3.2 (no comments please - I've given plenty of
> "comments" to the powers that be without results). I am currently
> rewriting it in C to determine if C++ may be the problem.
> 
> Any clues??

The GCC in FreeBSD 3.2 does not support per thread exception stacks;
this is most likely your problem.

Jeremy Allison (of SAMBA) may still have a copy of the patch
that he and I did to fix this for that version of C++.

Alternately, you will need to install the latest version of
GCC, in particular, to get the crt0.o stuff that does the per
thread exception stack registration.

Note that if you do this, you will need to work to add the
patchs to the installed new C++ header files if you are using
BSD .mk files to build your code, since it overrides the
paths with the system paths (this is abug in FreeBSD's .mk
file system) if DESTDIR is set.  This is required to support
RTTI, among other things needed for reasonable exception
handling.

You will have to hack the compiler definition line in your
Makefile to put the explicit path first for the includes and
the library paths (ugly; but it works around the FreeBSD .mk
file bug).

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3BF19E14.C6105E35>