Error Running C++ units

User 1337 | 3/3/2015, 2:03:25 PM

Hi all,

I have compiled Dato-Core system in my Mac laptop (OS X Yosemite) following the steps from https://github.com/dato-code/Dato-Core. The steps that I have finished without problems are:

./configure cd debug/src/unity make -j 4

However, when I try to compile the C++ units:

cd debug/test make

I get the following error:

Linking CXX executable timertest.cxxtest [ 25%] Built target timertest.cxxtest [ 25%] Building CXX object test/random/CMakeFiles/aliasbenchmark.dir/testalias.cpp.o Linking CXX executable aliasbenchmark [ 25%] Built target aliasbenchmark [ 26%] Performing build step for 'zookeeper' libtool: compile: /usr/bin/clang -DHAVECONFIGH -I. -I./include -I./tests -I./generated -fPIC -Wall -Werror -fPIC -MT zookeeper.lo -MD -MP -MF .deps/zookeeper.Tpo -c src/zookeeper.c -o zookeeper.o In file included from src/zookeeper.c:27: In file included from ./include/zookeeper.h:34: ./include/recordio.h:76:9: error: expected ')' int64t htonll(int64t v); ^ /usr/include/sys/_endian.h:141:25: note: expanded from macro 'htonll'

define htonll(x) __DARWIN_OSSwapInt64(x)

                    ^

/usr/include/libkern/OSByteOrder.h:78:30: note: expanded from macro '__DARWINOSSwapInt64' (builtinconstantp(x) ? DARWINOSSwapConstInt64(x) : OSSwapInt64(x)) ^ ./include/recordio.h:76:9: note: to match this '(' /usr/include/sys/_endian.h:141:25: note: expanded from macro 'htonll'

define htonll(x) __DARWIN_OSSwapInt64(x)

                    ^

/usr/include/libkern/OSByteOrder.h:78:5: note: expanded from macro '__DARWINOSSwapInt64' (builtinconstantp(x) ? DARWINOSSwapConstInt64(x) : OSSwapInt64(x)) ^ In file included from src/zookeeper.c:27: In file included from ./include/zookeeper.h:34: ./include/recordio.h:76:9: error: conflicting types for '__builtinconstantp' int64t htonll(int64t v); ^ /usr/include/sys/_endian.h:141:25: note: expanded from macro 'htonll'

define htonll(x) __DARWIN_OSSwapInt64(x)

                    ^

/usr/include/libkern/OSByteOrder.h:78:6: note: expanded from macro '__DARWINOSSwapInt64' (builtinconstantp(x) ? DARWINOSSwapConstInt64(x) : OSSwapInt64(x)) ^ ./include/recordio.h:76:9: note: '__builtinconstantp' is a builtin with type 'int ()' /usr/include/sys/_endian.h:141:25: note: expanded from macro 'htonll'

define htonll(x) __DARWIN_OSSwapInt64(x)

                    ^

/usr/include/libkern/OSByteOrder.h:78:6: note: expanded from macro '__DARWINOSSwapInt64' (builtinconstantp(x) ? DARWINOSSwapConstInt64(x) : OSSwapInt64(x)) ^ 2 errors generated. make[5]: * [zookeeper.lo] Error 1 make[4]: [all] Error 2 make[3]: ** [all] Error 2 make[2]: * [../deps/zookeeper/src/zookeeper-stamp/zookeeper-build] Error 2 make[1]: [CMakeFiles/zookeeper.dir/all] Error 2 make: ** [all] Error 2

Can anyone help me to solve this problem?

Thanks in advance,

Miguel C.

Comments

User 16 | 6/11/2015, 2:14:32 AM

Hi miguelhdo -

A fix for this has been merged. Please do a 'git pull'. After that delete the following directories: 'deps', 'debug', and 'release'. Then rerun './configure' and 'make'.

Let us know if you run into any further problems.

Thanks, Toby