lkml.org 
[lkml]   [2000]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 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/

\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.108 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site