Messages in this thread | | | Date | Tue, 21 Mar 2000 13:39:36 +0000 (GMT) | From | Nicholas Vinen <> | Subject | Re: c++ in kernel |
| |
You'd need to do something like this:
extern "C" { #include <allkernelheaders.h> }
You'd also have to extern "C" all symbols exported back to the kernel unless you do it explicitly. And any callback functions would need to be either global, static or class-static.
Nicholas Vinen
---
"... one of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs." -- Robert Firth
On Tue, 21 Mar 2000, Manfred Spraul wrote:
> From: "Kneemeyer, Ralf" <ralf_kneemeyer@digi.com> > > > > In my tests I wasn't even able to insmod a simple module > > without c++ source, just with g++ compiled ( source.cc ). > > > That _should_ be possible, although I never tried that: > > * did you surround all #include lines with 'extern "C" '? > * did you disable all fancy C++ features? exception handling, RTTI, perhaps > you must supply your own "new" and "delete". > > c++ modules might be a topic for 2.5 [i.e. add CPPFLAGS to Rules.make, and > add the "extern "C"" in all header files.] > > what was the exact error message from insmod? > > -- > Manfred > > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.rutgers.edu > Please read the FAQ at http://www.tux.org/lkml/ >
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |