You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by Sanjay Rao <ge...@live.com> on 2016/08/01 19:57:16 UTC
Core dump while building with CPP
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
Re: Core dump while building with CPP
Posted by Micah Kornfield <em...@gmail.com>.
This looks like somehow flatbuffers (a third party library) isn't getting
setup correctly for big-endian systems. According to the documentation [1]
it should be able to work. It would take some investigations to figure why
it isn't.
[1] https://google.github.io/flatbuffers/md__internals.html
On Mon, Aug 1, 2016 at 12:57 PM, Sanjay Rao <ge...@live.com> 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
Re: Core dump while building with CPP
Posted by Wes McKinney <we...@gmail.com>.
You can either:
- Set the environment variable CXXFLAGS
or
- Pass CMAKE_CXX_FLAGS to the cmake command: cmake -DCMAKE_CXX_FLAGS=" ... "
Setting CMAKE_CXX_FLAGS as an environment variable does not do
anything AFAIK (double check the actual command lines with `make
VERBOSE=1`)
On Mon, Aug 1, 2016 at 1:24 PM, Sanjay Rao <ge...@live.com> wrote:
> Didn't help much, I actually rebuilt whole arrow cpp with export CMAKE_CXX_FLAGS="-DFLATBUFFERS_LITTLEENDIAN=0" and then tried to build simple debug, still it's failing in same step.
> Thanks,Sanjay
>
>> From: wesmckinn@gmail.com
>> Date: Mon, 1 Aug 2016 13:07:11 -0700
>> Subject: Re: Core dump while building with CPP
>> To: dev@arrow.apache.org
>>
>> 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 <ge...@live.com> 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
>
RE: Core dump while building with CPP
Posted by Sanjay Rao <ge...@live.com>.
Didn't help much, I actually rebuilt whole arrow cpp with export CMAKE_CXX_FLAGS="-DFLATBUFFERS_LITTLEENDIAN=0" and then tried to build simple debug, still it's failing in same step.
Thanks,Sanjay
> From: wesmckinn@gmail.com
> Date: Mon, 1 Aug 2016 13:07:11 -0700
> Subject: Re: Core dump while building with CPP
> To: dev@arrow.apache.org
>
> 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 <ge...@live.com> 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
Re: Core dump while building with CPP
Posted by Wes McKinney <we...@gmail.com>.
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 <ge...@live.com> 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