Build error on QNX

Skip to first unread message

Ze Liu

Dec 7, 2022, 1:51:41 AM12/7/22
to Cap'n Proto
Hi everyone,

Recently I'm working on building capnp libraries on QNX. And I faced an issue that kj library source code has the same header files with QNX, like ‘exception.h’. And also the kj library needs some interfaces that QNX doesn't provide, like signaltstack. For this interface, the QNX header file says not supported for now.

I wonder is there a special version adapted with QNX? Or has anyone tried to use capnp on QNX?

Many thanks!

Kenton Varda

Dec 9, 2022, 2:22:10 PM12/9/22
to Ze Liu, Cap'n Proto
Hi Ze,

I haven't heard of anyone porting Cap'n Proto to QNX, but it should be possible.

`sigaltstack()` is only used as part of `printStackTraceOnCrash()`, which is a totally optional helper that is very OS-specific. You could start by adding some #if/#else such that this function is empty on QNX. There's probably a number of other places around the library where you'll need to do similar things, but not too many, as long as you're sticking to just libkj and libcapnp. libkj-async will probably be a lot more complicated to support, but it's only needed for RPC -- if you only care about serialization then you can ignore that part.


You received this message because you are subscribed to the Google Groups "Cap'n Proto" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit

Ze Liu

Dec 11, 2022, 8:28:06 PM12/11/22
to Cap'n Proto
Many thanks!
Reply all
Reply to author
0 new messages