Porting C++ apps to L4

Derick Swanepoel dswanepoel at gmail.com
Tue May 24 12:21:53 CEST 2005


On 5/24/05, Tiago Jorge <tjpj at lasige.di.fc.ul.pt> wrote:
> 
> >I'm busy porting a C++ application to L4. From various comments on the
> >mailing list I know that I cannot make use of exceptions and RTTI, but
> >unfortunately the program links against a library that makes heavy use
> >of both. What should I do?
> >
> >Is there any documentation or guidelines on porting C++ apps to L4?
> >
> >
> >
> it depends.
> If if you need to use libraries that link against dielibc (my case) tou
> cannot use this features, my case was with L4VFS.
> But if you are using libraries and servers that are fully compatible
> with C++, you just need to:
> 
> 1 - in your makefile, use the l4env_freebsd mode (MODE = l4env_freebsd)
> 2 - link your app with stdc++ (LIBS += -lstdc++)
> 3 - use the flags -nostdlib so that your program doesn't link with the
> library from the system (CXXFLAGS = -nostdlib)
> 
> Just following the cxx_hello example...
> 
> hope i've helped.
> 
> Tiago
 
I am using the l4env_freebsd mode (cannot use dietlibc because I need
STL). Do I understand correctly that RTTI and exceptions can be used
with libstdc++?

The next issue I have stumbled upon is that pthread_yield() can't be
found. Other pthread functions work fine (I do include <pthread.h> and
pthread.h is found by the include paths).

Thanks in advance,

Derick




More information about the l4-hackers mailing list