Re: generic q on freebsd
Kamal Prasad <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <[email protected]> |
Android has a libc++. I think that can be ported into the kernel. https://developer.android.com/ndk/guides/cpp-support thanks -kamal > On Oct 7, 2020, at 12:40 PM, Kamal Prasad <[email protected]> wrote: > > Thanks. Why is it difficult to port the C++ runtime to the kernel? I mean what is the technological hurdle? > > thanks > -kamal > > > > > > > On Oct 6, 2020, at 10:53 PM, Warner Losh <[email protected]> wrote: >> >> On Tue, Oct 6, 2020, 11:03 AM Kamal R. Prasad <[email protected]> wrote: >> >>> hello, >>> >>> i am curious if it is possible to compile c++ code inside the freebsd >>> kernel. >>> >> >> >> Possible? Yes, with restrictions. Easy? No. >> >> There are a number of restrictions on doing this. There is no C++ runtime >> support provided in stock FreeBSD. You have to write your own, or find >> someone else that has published theirs. And the code is likely to be >> compiler dependent. People have done it and talked or blogged about it. >> >> Generally, if you don't use exceptions, templates, RTTI, expressions that >> result in the automatic allocation of objects, have large objects (> 1k) on >> the stack, etc, it may be possible. I tried it in the 90s and had to write >> just a few routines to make simple classes work, but there's a lot of >> dragons here and very little C++ code is written these days w/o reference >> to the standard libraries, which aren't present in the kernel. >> >> Some googling turns up: >> https://github.com/adamlsd/libcpp.ko from 6 years ago >> https://lists.freebsd.org/pipermail/freebsd-arch/2018-June/019069.html has >> some details from 2 years ago about command line args you might need. >> >> Many have tried. Few have succeeded. Those that have write all their code >> to conform to a subset of the language. Few have had success moving C++ >> code for other purposes into the kernel, though if it was written using the >> proposed (but never ratified) eC++ (embedded subset), then chances are >> greater. >> >> Good luck >> >> Warner >> _______________________________________________ >> [email protected] mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-arm >> To unsubscribe, send any mail to "[email protected]" > _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-arm To unsubscribe, send any mail to "[email protected]"