See from flatbuffers.h
// The wire format uses a little endian encoding (since that's efficient for
// the common platforms).
#if !defined(FLATBUFFERS_LITTLEENDIAN)
#if defined(__GNUC__) || defined(__clang__)
#ifdef __BIG_ENDIAN__
#define FLATBUFFERS_LITTLEENDIAN 0
#else
#define FLATBUFFERS_LITTLEENDIAN 1
#endif // __BIG_ENDIAN__
#elif defined(_MSC_VER)
#if defined(_M_PPC)
#define FLATBUFFERS_LITTLEENDIAN 0
#else
#define FLATBUFFERS_LITTLEENDIAN 1
#endif
#else
#error Unable to determine endianness, define FLATBUFFERS_LITTLEENDIAN.
#endif
#endif // !defined(FLATBUFFERS_LITTLEENDIAN)
I believe you may want to add -DFLATBUFFERS_LITTLEENDIAN=0 to
CMAKE_CXX_FLAGS (you can do this on the command line).
Since not many of us have access to big endian hardware, it would be
helpful of you could submit a patch indicating what you had to do to
get things working on your platform.
Thanks
On Mon, Aug 1, 2016 at 12:57 PM, Sanjay Rao <[email protected]> wrote:
>
> cmake -DARROW_BUILD_BENCHMARKS=ON .....make[ 0%] Running flatc compiler on
> /u01/hadoop/src/arrow/arrow/cpp/../format/Message.fbsAssertion failed:
> *reinterpret_cast<char *>(&endiantest) == FLATBUFFERS_LITTLEENDIAN, file
> /u01/hadoop/src/arrow/arrow/cpp/thirdparty/flatbuffers-1.3.0/include/flatbuffers/flatbuffers.h,
> line 128, function EndianCheck*** Signal 6 - core dumped
> Does it mean I cannot run it on BIG ENDIAN system ? or can I comment this
> line and proceed building it ?
> Thanks,Sanjay