I'm trying to compile Hadoop native libraries in Unix, these is what I'm using:
- Hadoop: branch-3.2 (here is the Hadoop Repository)
- macOS: Catalina Version 10.15.5
- Protobuf: libprotoc 2.5.0
- OpenSSL 1.0.2t 10 Sep 2019
- gcc: Apple clang version 11.0.3 (clang-1103.0.32.62) Target: x86_64-apple-darwin19.5.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin
- java version "1.8.0_251" (build 1.8.0_251-b08)
I followed all steps here: Compiling Hadoop on MAC After fixing a couple of problems with openssl and protobuf now it looks like the compilation of Apache Hadoop MapReduce NativeTask is failing due to a dependency with C++11 .
Do I need to specify somehow to maven the CXXFLAGS parameter set to -std=c++11? How do I do it? Or am I missing some configuration in my gcc?
I tried setting an alias to gcc so then it immediately is called with the flags like it's explained here: How to make clang support C++ 11 by default, but still doesn't work.
So far these are one of the many similar errors I have:
[WARNING] /usr/local/include/snappy-stubs-public.h:61:16: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
[WARNING] using uint64 = std::uint64_t;
[WARNING] In file included from /Users/josh/Dev/hadoop/repo/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-nativetask/src/main/native/test/TestCompressions.cc:29:
[WARNING] **/usr/local/include/snappy.h:197:10: error: unknown type name 'constexpr'**
[WARNING] static constexpr int kBlockLog = 16;
[INFO] Apache Hadoop MapReduce NativeTask ................. FAILURE [ 1.995 s]
THANK YOU!
Aucun commentaire:
Enregistrer un commentaire