fusesource / leveldbjni

A Java Native Interface to LevelDB
BSD 3-Clause "New" or "Revised" License
535 stars 145 forks source link

To build it for ARM64 (aarch64 ) #83

Closed Xingwd closed 7 years ago

Xingwd commented 7 years ago

Hi, we are fixing ARM64 to bigtop on redoop, but it seems that Leveldbjni does not yet support ARM64. Therefore, I have to fix ARM64 to Leveldbjni. I added some code refer to ppc64le, but it doesn't work. Help me please!

Build fails with the following errors. Any ideas? [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory /opt/xwd/leveldb/build/leveldbjni/leveldbjni-linux64/src/main/resources [INFO] [INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ leveldbjni-linux64 --- [INFO] No sources to compile [INFO] [INFO] --- maven-hawtjni-plugin:1.11:build (default) @ leveldbjni-linux64 --- [INFO] Extracting /opt/xwd/leveldb/build/leveldbjni/leveldbjni/target/leveldbjni-99-master-SNAPSHOT-native-src.zip to /opt/xwd/leveldb/build/leveldbjni/leveldbjni-linux64/target/native-build-extracted [INFO] executing: /bin/sh -c ./configure --disable-ccache --prefix=/opt/xwd/leveldb/build/leveldbjni/leveldbjni-linux64/target/native-build/target --with-leveldb=/opt/xwd/leveldb/build/leveldb '--with-snappy=${env.SNAPPY_HOME}' [INFO] executing: /bin/sh -c make install [INFO] /bin/bash ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I./src -g -O2 -I/opt/xwd/leveldb/build/leveldb/include -I/usr/lib/jvm/java-7-openjdk-arm64/include -I/usr/lib/jvm/java-7-openjdk-arm64/include/linux -c -o src/leveldbjni.lo src/leveldbjni.cpp [INFO] libtool: compile: g++ -DHAVE_CONFIG_H -I. -I./src -g -O2 -I/opt/xwd/leveldb/build/leveldb/include -I/usr/lib/jvm/java-7-openjdk-arm64/include -I/usr/lib/jvm/java-7-openjdk-arm64/include/linux -c src/leveldbjni.cpp -fPIC -DPIC -o src/.libs/leveldbjni.o [INFO] src/leveldbjni.cpp: In function 'void Java_org_fusesource_leveldbjni_internal_NativeDB_00024DBJNI_ResumeCompactions(JNIEnv, jclass, jlong)': [INFO] src/leveldbjni.cpp:426:35: error: 'class leveldb::DB' has no member named 'ResumeCompactions' [INFO] ((leveldb::DB )(intptr_t)arg0)->ResumeCompactions(); [INFO] ^ [INFO] src/leveldbjni.cpp: In function 'void Java_org_fusesource_leveldbjni_internal_NativeDB_00024DBJNI_SuspendCompactions(JNIEnv, jclass, jlong)': [INFO] src/leveldbjni.cpp:435:35: error: 'class leveldb::DB' has no member named 'SuspendCompactions' [INFO] ((leveldb::DB )(intptr_t)arg0)->SuspendCompactions(); [INFO] ^ [INFO] Makefile:517: recipe for target 'src/leveldbjni.lo' failed [INFO] make: *** [src/leveldbjni.lo] Error 1 [INFO] rc: 2 [INFO] ------------------------------------------------------------------------

itongxiaojun commented 7 years ago

fix on https://github.com/chinaredoop/leveldbjni https://github.com/chinaredoop/leveldb