Hi,

Thank you all so much.
But even after I read the Genode documentation, it is still very unclear to
me how to support C++ in a new OS.
I am confusing about the relationship among gcc, C library and OS.
It seems that gcc uses some its internal libraries to implement some C++
support, for example libgcc contains
the unwinder for exceptions and libsupc++. And those internal libraries
depend on C library and OS support.
Is my understanding of gcc is correct?
If sel4 now does not fully support C++, is there any microkernels or
"small" OS support C++?
So I can learn some experience from it.

Thanks again.
Yuxin

On Sat, Jun 20, 2015 at 2:26 PM, da Tyga <[email protected]> wrote:

>
>> Hi Yuxin,
>
> I don't think you need to modify GCC, it is the compiler that you can use
> to generate required executables.  Making changes to it is a massive
> undertaking.
>
> Instead of trying to reinvent stuff that has already been done, you really
> should read the Genode documentation and download and read the source code
> referenced by Norman Feske's suggestions.
>
> From my reading of the Genode documents and source code, I would expect
> that you would find a considerable amount of code that you could you
> re-purpose for your specific requirements.
>
> Cheers,
> Tyga
>
>
>
>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Fri, 19 Jun 2015 22:46:40 +0800
>> From: Yuxin Ren <[email protected]>
>> To: Norman Feske <[email protected]>
>> Cc: "[email protected]" <[email protected]>
>> Subject: Re: [seL4] Does sel4 support c++
>> Message-ID:
>>         <CAAKbDrcbyh0YV+nHzhziiiXavn-=
>> [email protected]>
>> Content-Type: text/plain; charset="utf-8"
>>
>> Thank you all!
>>
>> If modifying the tool chain is the easiest way, I want to try it.
>> But I definitely want to avoid creating the tool chain from "bare metal".
>> I still prefer to reuse the existing tool chain like gcc
>> with minimal modification.
>>
>> Could you give me some guidance how to create a custom tool chain, which
>> part I need to modify?
>> I am not familiar with gcc. So if I have to modify gcc, where can I get
>> more information or documentation?
>>
>> Thanks a lot!!
>> Yuxin
>>
>> On Thu, Jun 18, 2015 at 9:50 PM, Norman Feske <
>> [email protected]>
>> wrote:
>>
>> > Hello,
>> >
>> > > The easiest approach is possibly to create a custom tool chain, and
>> port
>> > > the GCC C++ library that way. I know the people behind Genode did some
>> > > of this (http://genode.org/download/tool-chain), although I'm not
>> sure
>> > > how much of the C++ standard library they actually support.
>> >
>> > more in-depth information about Genode's tool chain are provided by
>> > Section 7.2 of the documentation [1]. In short, the tool chain is a
>> > "bare metal" tool chain that does not depend on a C library, yet it
>> > still supports C++ (including exceptions and runtime type information).
>> >
>> > On Genode, the libc and STL (aka stdcxx) can be used optionally whereas
>> > the STL depends on the libc. The libc is based on FreeBSD's libc. The
>> > STL is GCC's version. Both libraries are available via Genode's ports
>> > mechanism.
>> >
>> > That said, as both the libc and stdcxx are shared libraries, they cannot
>> > be used on the seL4 version of Genode as of now. Shared libraries don't
>> > work on seL4 (at least on x86_32) because the system-call bindings
>> > cannot be compiled with -fPIC.
>> >
>> > [1] http://genode.org/documentation/genode-foundations-15-05.pdf
>> >
>> > Best regards
>> > Norman
>> >
>> > --
>> > Dr.-Ing. Norman Feske
>> > Genode Labs
>> >
>> > http://www.genode-labs.com ? http://genode.org
>> >
>> > Genode Labs GmbH ? Amtsgericht Dresden ? HRB 28424 ? Sitz Dresden
>> > Gesch?ftsf?hrer: Dr.-Ing. Norman Feske, Christian Helmuth
>> >
>> > _______________________________________________
>> > Devel mailing list
>> > [email protected]
>> > https://sel4.systems/lists/listinfo/devel
>> >
>> -------------- next part --------------
>> An HTML attachment was scrubbed...
>> URL: <
>> http://sel4.systems/pipermail/devel/attachments/20150619/5b4ce704/attachment-0001.html
>> >
>>
>> ------------------------------
>>
>> Subject: Digest Footer
>>
>> _______________________________________________
>> Devel mailing list
>> [email protected]
>> https://sel4.systems/lists/listinfo/devel
>>
>>
>> ------------------------------
>>
>> End of Devel Digest, Vol 13, Issue 10
>> *************************************
>>
>
>
> _______________________________________________
> Devel mailing list
> [email protected]
> https://sel4.systems/lists/listinfo/devel
>
>
_______________________________________________
Devel mailing list
[email protected]
https://sel4.systems/lists/listinfo/devel

Reply via email to