pip install javabridge==1.0.14 works fine for me,
but pip install javabridge fails with the error below.
This is after having run pip install numpy >= 1.9 (which installed numpy==1.13.3) because of the issue with installing numpy and scipy at the same time.
I have javac 1.7.0_151 installed from this package:
$ dpkg -l | grep jdk
ii openjdk-7-jdk:amd64 7u151-2.6.11-0ubuntu1.14.04.1
Should probably raise this as a "javabridge" issue, but pinning mytardisbf's dependency to 1.0.14 seems like a good workaround for now.
Collecting javabridge
Using cached javabridge-1.0.15.tar.gz
Requirement already satisfied: numpy in ./virtualenvs/mytardis/lib/python2.7/site-packages (from javabridge)
Building wheels for collected packages: javabridge
Running setup.py bdist_wheel for javabridge ... error
Complete output from command /home/mytardis/virtualenvs/mytardis/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-LGEeSa/javabridge/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmph0prcBpip-wheel- --python-tag cp27:
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/javabridge
copying javabridge/noseplugin.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/locate.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/__init__.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/jutil.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/wrappers.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/_version.py -> build/lib.linux-x86_64-2.7/javabridge
creating build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_cpython.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_javabridge.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/__init__.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_wrappers.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_jutil.py -> build/lib.linux-x86_64-2.7/javabridge/tests
creating build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/rhino-1.7R4.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/test.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/runnablequeue.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/cpython.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/libjava2cpython.so -> build/lib.linux-x86_64-2.7/javabridge/jars
running build_ext
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/runnablequeue/RunnableQueue.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/test/RealRect.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPython.java /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPythonInvocationHandler.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
Note: /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPythonInvocationHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 warning
building 'javabridge._javabridge' extension
creating build/temp.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include -I/usr/lib/jvm/java-7-openjdk-amd64/jre/include -I/usr/lib/jvm/java-7-openjdk-amd64/jre/include/linux -I/usr/include/python2.7 -c _javabridge.c -o build/temp.linux-x86_64-2.7/_javabridge.o
In file included from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1809:0,
from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from _javabridge.c:435:
/home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by " \
^
_javabridge.c:437:17: fatal error: jni.h: No such file or directory
#include "jni.h"
^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
Failed building wheel for javabridge
Running setup.py clean for javabridge
Failed to build javabridge
Installing collected packages: javabridge
Running setup.py install for javabridge ... error
Complete output from command /home/mytardis/virtualenvs/mytardis/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-LGEeSa/javabridge/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-iddXPx-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/mytardis/virtualenvs/mytardis/include/site/python2.7/javabridge:
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/javabridge
copying javabridge/noseplugin.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/locate.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/__init__.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/jutil.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/wrappers.py -> build/lib.linux-x86_64-2.7/javabridge
copying javabridge/_version.py -> build/lib.linux-x86_64-2.7/javabridge
creating build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_cpython.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_javabridge.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/__init__.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_wrappers.py -> build/lib.linux-x86_64-2.7/javabridge/tests
copying javabridge/tests/test_jutil.py -> build/lib.linux-x86_64-2.7/javabridge/tests
creating build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/rhino-1.7R4.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/test.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/runnablequeue.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/cpython.jar -> build/lib.linux-x86_64-2.7/javabridge/jars
copying javabridge/jars/libjava2cpython.so -> build/lib.linux-x86_64-2.7/javabridge/jars
running build_ext
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/runnablequeue/RunnableQueue.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/test/RealRect.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
javac -source 6 -target 6 /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPython.java /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPythonInvocationHandler.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
Note: /tmp/pip-build-LGEeSa/javabridge/java/org/cellprofiler/javabridge/CPythonInvocationHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 warning
building 'javabridge._javabridge' extension
creating build/temp.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include -I/usr/lib/jvm/java-7-openjdk-amd64/jre/include -I/usr/lib/jvm/java-7-openjdk-amd64/jre/include/linux -I/usr/include/python2.7 -c _javabridge.c -o build/temp.linux-x86_64-2.7/_javabridge.o
In file included from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1809:0,
from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from _javabridge.c:435:
/home/mytardis/virtualenvs/mytardis/local/lib/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by " \
^
_javabridge.c:437:17: fatal error: jni.h: No such file or directory
#include "jni.h"
^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
pip install javabridge==1.0.14
works fine for me, butpip install javabridge
fails with the error below.This is after having run
pip install numpy >= 1.9
(which installednumpy==1.13.3
) because of the issue with installing numpy and scipy at the same time.I have
javac 1.7.0_151
installed from this package:Should probably raise this as a "javabridge" issue, but pinning mytardisbf's dependency to 1.0.14 seems like a good workaround for now.