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.
