Я пытаюсь установить / собрать Apache Accumulo. Я использую http://mirror.olnevhost.net/pub/apache/accumulo/1.9.2/accumulo-1.9.2-src.tar.gz в качестве установочного носителя.
Я запускал «mvn package» несколько раз, но это не помогло, потому что он не мог найти эти файлы: jni_md.h и jni.h
Чтобы преодолеть эту проблему, я запустил следующие команды:
sudo cp /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/include/linux/jni_md.h /usr/bin/accumulo-1.9.2/server/native/target/accumulo-native-1.9.2/accumulo-native-1.9.2/javah/
sudo cp /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/include/jni.h /usr/bin/accumulo-1.9.2/server/native/target/accumulo-native-1.9.2/accumulo-native-1.9.2/javah/
sudo cp /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/include/jni.h /usr/bin/accumulo-1.9.2/server/native/target/native/javah/
Теперь, когда я запускаю "mvn package", я получаю это:
[ИНФОРМАЦИЯ] Собственные библиотеки Apache Accumulo ................... Сбой [
3,430 с]
... g ++ -g -fPIC -shared -O3 -Wall -I '/ usr /' / include
-I '/ usr /' / include / linux -Ijavah -o libaccumulo.so nativeMap / org_apache_accumulo_tserver_NativeMap.cc В файле включено
из /usr/include/stdio.h:74:0,
из Джавах / Джни.ч: 39,
из javah / org_apache_accumulo_tserver_NativeMap.h: 2,
из nativeMap / org_apache_accumulo_tserver_NativeMap.cc: 17:
/usr/include/libio.h:307:3: ошибка: «size_t» не называет тип
size_t __pad5; ^ /usr/include/libio.h:311:67: ошибка: "size_t" был
не объявлено в этой области char _unused2 [15 * sizeof (int) - 4 *
sizeof (void *) - sizeof (size_t)];
^ /usr/include/libio.h:339:62: ошибка: "size_t" не был объявлен
typedef __ssize_t __io_read_fn (void * __ cookie, char * __ buf, size_t
__nbytes);
^ /usr/include/libio.h:348:6: ошибка: "size_t" не был объявлен
size_t __n);
^
...
make: *** [libaccumulo.so] Ошибка 1 [ERROR] Ошибка выполнения команды.
org.apache.commons.exec.ExecuteException: процесс завершен с
ошибка: 2 (выходное значение: 2)
в org.apache.commons.exec.DefaultExecutor.executeInternal (DefaultExecutor.java:404)
в org.apache.commons.exec.DefaultExecutor.execute (DefaultExecutor.java:166)
в org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:764)
в org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:711)
В некоторых файлах, которые я изучал, вверху написано "машина сгенерирована" и сказано, чтобы я не изменял их. Я обеспокоен тем, что мой путь к ошибкам отсутствующих файлов jni.h и jni_md.h не был идеальным. Я попытался установить JAVA_HOME, чтобы включить их естественные местоположения. Но «пакет mvn» не будет работать, когда я это сделаю.
Как мне получить исходный носитель для установки Apache Accumulo без этих ошибок size_t?