lkml.org 
[lkml]   [2008]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [LINUX-KERNEL] C++ in linux kernel
On Feb 8, 2008 9:24 PM, Jan Engelhardt <jengelh@computergmbh.de> wrote:
>
> On Feb 9 2008 00:14, Joonwoo Park wrote:
> >2008/2/8, rohit h <hrohit85@gmail.com>:
> >> Hi,
> >> I am a kernel newbie.
> >> I tried to insmod a C++ module containing classes, inheritance.
> >> I am getting 'unresolved symbol' error when I use the 'new' keyword.
> >> What could the problem be?
> >>
> >> What kind of runtime support is needed ( arm linux kernel)? Is a
> >> patch available for it?
> >>
> >Please take a look at click modular router which is using c++ as a
> >linux kernel module.
> >http://www.read.cs.ucla.edu/click/
> >The lib/glue.cc provides custom operator new.
>
> Uh, let's not make the world worse :)
> Just call malloc from C++, and carefully select what C++ features
> you are going to use. The VMware source for example does it right.
>

From the links given, I dig that following C++ features need runtime support:
a. Pure virtual functions
b. Global objects : Needs compiler dependent changes
c. new & delete : Can use kmalloc / kfree instead
d. Run time type info
e. Exceptions
I guess features d & e need considerable effort.
Apart from these, am I free to use other C++ features?
Where could I see the VMWare sources?


> Compiling the kernel module with g++ is not a simple work, you may
> need big patch for kernel itself.

I don't want to compile entire kernel.
I only want to compile my module with g++ and insmod it.
Any hint on how to write the Makefile.

Thanks in advance,
Rohit


\
 
 \ /
  Last update: 2008-02-11 12:41    [W:0.058 / U:0.976 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site