Hi Waikiki,

Did fixing the -I flag solve your problem?

FWIW, if you compile with -DKJ_USE_EPOLL=0, then Cap'n Proto will revert to
using a portable poll()-based event loop which does not use signalfd. That
should "just work" -- however, you'll need to compile all apps with
-DKJ_USE_EPOLL=0 as well (if they use RPC / kj-async).

-Kenton

On Tue, Jul 5, 2016 at 2:54 PM, Waikiki Yeh <[email protected]> wrote:

> Stupid me.
>
> The include path via -I was causing the string.h from kj to be included
> ahead of string.h from system directory.
>
>
>
> On Tuesday, July 5, 2016 at 5:46:19 AM UTC-5, Waikiki Yeh wrote:
>>
>> Hello,
>>
>> I am testing out using capnp for serialization only on an older Linux
>> distro (namely Red Hat 5). Running make directly would lead to failure on
>> signalfd.h not being found as expected. Looking at the docs on the web,
>> configure.ac, Makefile.am, and the generated Makefile, it seems that the
>> serialization part resides on capnp, capnp-c++, capnpc-capnp,  ibcapnp.la,
>> libcapnpc.la, libkj.la, and the shared objects.
>>
>> I then proceeds to copy the headers and binary to a different directory.
>> Using the AddressBook example on capnp website, I was able to generate the
>> .c++ and .h file from it. However, when I try to include the capnp
>> generated .h file and compile a simple test with the following command:
>>
>> " g++ -v -std=c++11 -o my_test my_test.cpp  my_test.capnp.c++
>> -I<path_to_capnp>/include -I<path_to_capnp>/include/kj"
>>
>> all hell broke loose and I got all kinds of error on memcpy, strlen,
>> memset in capnp headers being not a member of std. An exact error looks like
>>
>> "layout.h:1084:3: error: 'memcpy' is not a member of 'std'
>>    std::memcpy(&tag, &other.tag, sizeof(tag));  // Needs memcpy to comply
>> with aliasing rules."
>>
>> The g++ is 4.8.1. Sorry for being somewhat vague, I am not sure which
>> information is relevant and which is not. Greatly appreciate if anyone can
>> point to a direction for debugging. Thanks.
>>
>> W.K Yeh
>>
>>
>>
>>
>> --
> 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 [email protected].
> Visit this group at https://groups.google.com/group/capnproto.
>

-- 
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 [email protected].
Visit this group at https://groups.google.com/group/capnproto.

Reply via email to