ARM64 support was added after 2.5.0, so you probably have to patch the fix
back to 2.5.0 in order to compile 2.5.0 for arm64. See the patch:
https://github.com/google/protobuf/commit/2ca19bd8066821a56f193e7fca47139b25c617ad

On Thu, May 26, 2016 at 12:16 AM, David MacMillan <[email protected]>
wrote:

> In recompiling the native libraries for Hadoop 2.6.4 for ARM64, I need
> protobuf 2.5.0 for ARM64. But when I try to build protobuf 2.5.0 on an
> ARM64 cpu, I get the 'atomicops' error shown below. This error seems
> similar to this bug report for Solaris:
> https://groups.google.com/forum/#!topic/protobuf/ozYD2lXIkGo
> but in my case it is for ARM64. It would be great if someone could either
> suggest a workaround or suggest how to fix the protobuf 2.5.0 make files.
> Unfortunately the build of the Hadoop native libraries is insisting on
> protobuf 2.5.0 so using a more recent protobuf version doesn't appear to be
> an option..
>
> Here is my make listing, with the error shown at the end:
> make
> make  all-recursive
> make[1]: Entering directory '/home/hduser/Downloads/protobuf-2.5.0'
> Making all in .
> make[2]: Entering directory '/home/hduser/Downloads/protobuf-2.5.0'
> make[2]: Leaving directory '/home/hduser/Downloads/protobuf-2.5.0'
> Making all in src
> make[2]: Entering directory '/home/hduser/Downloads/protobuf-2.5.0/src'
> /bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.
> -I..    -pthread -Wall -Wwrite-strings -Woverloaded-virtual
> -Wno-sign-compare -O2 -g -DNDEBUG -MT atomicops_internals_x86_gcc.lo -MD
> -MP -MF .deps/atomicops_internals_x86_gcc.Tpo -c -o
> atomicops_internals_x86_gcc.lo `test -f
> 'google/protobuf/stubs/atomicops_internals_x86_gcc.cc' || echo
> './'`google/protobuf/stubs/atomicops_internals_x86_gcc.cc
> libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -pthread -Wall
> -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -O2 -g -DNDEBUG -MT
> atomicops_internals_x86_gcc.lo -MD -MP -MF
> .deps/atomicops_internals_x86_gcc.Tpo -c
> google/protobuf/stubs/atomicops_internals_x86_gcc.cc  -fPIC -DPIC -o
> .libs/atomicops_internals_x86_gcc.o
> In file included from ./google/protobuf/stubs/atomicops.h:59:0,
>                  from
> google/protobuf/stubs/atomicops_internals_x86_gcc.cc:36:
> ./google/protobuf/stubs/platform_macros.h:61:2: error: #error Host
> architecture was not detected as supported by protobuf
>  #error Host architecture was not detected as supported by protobuf
>   ^
> In file included from
> google/protobuf/stubs/atomicops_internals_x86_gcc.cc:36:0:
> ./google/protobuf/stubs/atomicops.h:161:1: error: stray â#â in program
>  #error "Atomic operations are not supported on your platform"
>  ^
> ./google/protobuf/stubs/atomicops.h:188:1: note: in expansion of macro
> âGOOGLE_PROTOBUF_ATOMICOPS_ERRORâ
>  GOOGLE_PROTOBUF_ATOMICOPS_ERROR
>  ^
> ./google/protobuf/stubs/atomicops.h:161:2: error: âerrorâ does not name a
> type
>  #error "Atomic operations are not supported on your platform"
>   ^
> ./google/protobuf/stubs/atomicops.h:188:1: note: in expansion of macro
> âGOOGLE_PROTOBUF_ATOMICOPS_ERRORâ
>  GOOGLE_PROTOBUF_ATOMICOPS_ERROR
>  ^
> Makefile:1481: recipe for target 'atomicops_internals_x86_gcc.lo' failed
> make[2]: *** [atomicops_internals_x86_gcc.lo] Error 1
> make[2]: Leaving directory '/home/hduser/Downloads/protobuf-2.5.0/src'
> Makefile:669: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '/home/hduser/Downloads/protobuf-2.5.0'
> Makefile:576: recipe for target 'all' failed
> make: *** [all] Error 2
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to