Sto provando a creare l'interfaccia python di NLP stanford su Ubuntu 12.04.5 LTS. Ci sono due passaggi necessari, il primo dei quali è:Errori di installazione dell'interfaccia python Stanford CoreNLP
- compilazione Jpype eseguendo "setup rastrello" in 3rdParty/jpype
Nel fare ciò ho il seguente errore:
In file included from src/native/common/jp_monitor.cpp:17:0:
src/native/common/include/jpype.h:45:17: fatal error: jni.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
rake aborted!
Command failed with status (1): [cd JPype-0.5.4.1 && python setup.py build...]
I messaggi di errore indicano che mi manca jni.h
, quindi come suggerito here se ho eseguito il comando dpkg-query -L openjdk-7-jdk | grep "jni.h"
ottenendo /usr/lib/jvm/java-7-openjdk-amd64/include/jni.h
.
Credo che ciò significa che ho il jni.h
sul mio sistema, quindi sono molto confuso al momento. Qual è la causa dell'errore? Puoi suggerire qualche correzione?
Grazie per il vostro aiuto!
un paio di più APPROFONDIMENTI
Qui è l'istruzione che causa l'errore:
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/lib/jvm/java-1.5.0-sun-1.5.0.08/include -I/usr/lib/jvm/java-1.5.0-sun-1.5.0.08/include/linux -Isrc/native/common/include -Isrc/native/python/include -I/usr/include/python2.7 -c src/native/common/jp_class.cpp -o build/temp.linux-x86_64-2.7/src/native/common/jp_class.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for Ada/C/ObjC but not for C++ [enabled by default]
In file included from src/native/common/jp_class.cpp:17:0:src/native/common/include/jpype.h:45:17: fatal error: jni.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
E 'venuta dalla compilazione di JPype
necessaria per l'interfaccia pitone. Non so perché, ma include percorsi che non ho nel mio file system (ad esempio -I/usr/lib/jvm/java-1.5.0-sun-1.5.0.08/include/linux
).
Come posso configurare questi percorsi correttamente?
Grazie mille per la risposta! Questo è esattamente il problema, l'unica cosa è che non avevo idea di come risolverlo;) ora sono riuscito! – Matteo