tabulapdf
tabulapdf copied to clipboard
Installation problem, non-zero exit status
I am on macOS Seirra 10.12.5. I have installed Java (per the link on the README), and I have installed the rJava package. Here is what I get when I try to install using ghit and devtools:
> ghit::install_github(c("ropensci/tabulizerjars", "ropensci/tabulizer"), verbose=TRUE)
Parsing reponame for 'ropensci/tabulizerjars'...
Creating local git repository for tabulizerjars in /var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/tabulizerjars176c645d66634...
Checking out package tabulizerjars to local git repository...
[new] c6cc40e055d3f92c4e96 refs/remotes/github/master
[new] 8e97b66b202b72e2d3b8 refs/remotes/github/tabula1.0.0
[new] 49e8e460fd627b6b05db refs/tags/v0.8.0
[new] 9d4ad56ff7efa2f15560 refs/tags/v0.9.0
[new] 063903e22684b86ad1e5 refs/tags/v0.9.1
[new] e472789f3d7f3e3e7a6b refs/tags/v0.9.2
[new] 8cd728692a47868b4fff refs/tags/v1.0.1
Adding metadata to DESCRIPTION for package tabulizerjars...
Reading package metadata for 'ropensci/tabulizerjars'...
Building package tabulizerjars (0.9.2)...
Creating internal package repository in /var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src...
Writing PACKAGES file for internal repository...
Writing package tabulizerjars to internal repository...
Parsing reponame for 'ropensci/tabulizer'...
Creating local git repository for tabulizer in /var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/tabulizer176c62cc322a7...
Checking out package tabulizer to local git repository...
[new] 2fedf7ad935235bc211f refs/remotes/github/badge-add
[new] 89fdfba9082e4ec9d4df refs/remotes/github/master
Adding metadata to DESCRIPTION for package tabulizer...
Reading package metadata for 'ropensci/tabulizer'...
Installing 'Suggests' packages for 'tabulizer': graphics, grDevices, shiny, miniUI, testthat, knitr
Building package tabulizer (0.1.24)...
Using internal package repository in /var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src...
Writing PACKAGES file for internal repository...
Writing package tabulizer to internal repository...
Installing packages tabulizerjars, tabulizer and 'Depends', 'Imports', 'LinkingTo'
system (cmd0): /Library/Frameworks/R.framework/Resources/bin/R CMD INSTALL
foundpkgs: tabulizerjars, tabulizer, //var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src/contrib/tabulizerjars_0.9.2.tar.gz, //var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src/contrib/tabulizer_0.1.24.tar.gz
files: //var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src/contrib/tabulizerjars_0.9.2.tar.gz,
//var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T//Rtmp8mvpbu/ghitdrat/src/contrib/tabulizer_0.1.24.tar.gz
* installing *source* package ‘tabulizerjars’ ...
** R
** inst
** preparing package for lazy loading
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so
Reason: image not found
ERROR: lazy loading failed for package ‘tabulizerjars’
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/tabulizerjars’
ERROR: dependency ‘tabulizerjars’ is not available for package ‘tabulizer’
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/tabulizer’
The downloaded source packages are in
‘/private/var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T/Rtmp8mvpbu/downloaded_packages’
ropensci/tabulizerjars ropensci/tabulizer
NA NA
Warning messages:
1: In utils::install.packages(to_install, type = type, repos = repos, :
installation of package ‘tabulizerjars’ had non-zero exit status
2: In utils::install.packages(to_install, type = type, repos = repos, :
installation of package ‘tabulizer’ had non-zero exit status
> devtools::install_github(c("ropensci/tabulizerjars", "ropensci/tabulizer"), verbose=TRUE)
Downloading GitHub repo ropensci/tabulizerjars@master
from URL https://api.github.com/repos/ropensci/tabulizerjars/zipball/master
Installing tabulizerjars
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \
'/private/var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T/Rtmp8mvpbu/devtools176c6275be0f8/ropensci-tabulizerjars-c6cc40e' \
--library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests
* installing *source* package ‘tabulizerjars’ ...
** R
** inst
** preparing package for lazy loading
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so
Reason: image not found
ERROR: lazy loading failed for package ‘tabulizerjars’
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/tabulizerjars’
Installation failed: Command failed (1)
Downloading GitHub repo ropensci/tabulizer@master
from URL https://api.github.com/repos/ropensci/tabulizer/zipball/master
Installing tabulizer
Downloading GitHub repo ropensci/tabulizerjars@master
from URL https://api.github.com/repos/ropensci/tabulizerjars/zipball/master
Installing tabulizerjars
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \
'/private/var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T/Rtmp8mvpbu/devtools176c670a216a9/ropensci-tabulizerjars-c6cc40e' \
--library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests
* installing *source* package ‘tabulizerjars’ ...
** R
** inst
** preparing package for lazy loading
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so
Reason: image not found
ERROR: lazy loading failed for package ‘tabulizerjars’
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/tabulizerjars’
Installation failed: Command failed (1)
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \
'/private/var/folders/t8/fxx2gfc944l1r5y4mv78_qfr0000gn/T/Rtmp8mvpbu/devtools176c61503d64a/ropensci-tabulizer-89fdfba' \
--library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests
ERROR: dependency ‘tabulizerjars’ is not available for package ‘tabulizer’
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/tabulizer’
Installation failed: Command failed (1)
I've looked through the previous, closed issues. I tried running R CMD javareconf
in the terminal, with this error:
Java version : 1.6.0_65
Java home path : /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
System Java on macOS
trying to compile and link a JNI program
detected JNI cpp flags : -I/System/Library/Frameworks/JavaVM.framework/Headers
detected JNI linker flags : -framework JavaVM
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/System/Library/Frameworks/JavaVM.framework/Headers -I/usr/local/include -fPIC -Wall -g -O2 -c conftest.c -o conftest.o
conftest.c:1:10: fatal error: 'jni.h' file not found
#include <jni.h>
^
1 error generated.
make: *** [conftest.o] Error 1
Unable to compile a JNI program
JAVA_HOME : /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Java library path:
JNI cpp flags :
JNI linker flags :
Updating Java configuration in /Library/Frameworks/R.framework/Resources
Done.
This could also be due more to Java itself on my computer. I tried to get tabula-py
to do this, and I got the error after running their function read_pdf
:
CalledProcessError: Command '['java', '-jar', '/anaconda/lib/python3.6/site-packages/tabula/tabula-1.0.1-jar-with-dependencies.jar', '--pages', '1', '--guess', '~/Users/markiiwhite/Documents/Factbook/results/pdfs/2016_General_Election_Official_Results.pdf']' returned non-zero exit status 1.
---------------------------------------------------------------------------
CalledProcessError Traceback (most recent call last)
<ipython-input-120-08022bfc6ccf> in <module>()
----> 1 df = tabula.read_pdf(path)
/anaconda/lib/python3.6/site-packages/tabula/wrapper.py in read_pdf(input_path, output_format, encoding, java_options, pandas_options, multiple_tables, **kwargs)
73
74 try:
---> 75 output = subprocess.check_output(args)
76 finally:
77 if is_url:
/anaconda/lib/python3.6/subprocess.py in check_output(timeout, *popenargs, **kwargs)
334
335 return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
--> 336 **kwargs).stdout
337
338
/anaconda/lib/python3.6/subprocess.py in run(input, timeout, check, *popenargs, **kwargs)
416 if check and retcode:
417 raise CalledProcessError(retcode, process.args,
--> 418 output=stdout, stderr=stderr)
419 return CompletedProcess(process.args, retcode, stdout, stderr)
420
CalledProcessError: Command '['java', '-jar', '/anaconda/lib/python3.6/site-packages/tabula/tabula-1.0.1-jar-with-dependencies.jar', '--pages', '1', '--guess', '~/Users/markiiwhite/Documents/Factbook/results/pdfs/2016_General_Election_Official_Results.pdf']' returned non-zero exit status 1.
Any ideas?
I have the same issue, right down to the details. Will my adding this bump up its visibility? I really need a solution, or I have a lot of manual work ahead of me this weekend!
UPDATE: I just tried R CMD javareconf
, and that actually worked for me.
This worked for me, from http://paulklemm.com/blog/2017-02-12-fix-onload-failed-rjava-macos/:
dyn.load(paste0(system2('/usr/libexec/java_home', stdout = TRUE), '/jre/lib/server/libjvm.dylib'))
# rJava should load
library(rJava)
devtools::install_github(c("ropensci/tabulizerjars"))
devtools::install_github(c("ropensci/tabulizer"))
I encountered the same errors. I running macOS Sierra 10.12.6 and Rstudio v1.1.383.
I installed ghit
and rJava
, but didn't get very far when I loaded rJava
. (I encountered the .onLoad failed in loadNamespace() for 'rJava'
error.)
In the comment by @andybega, there is a link to the following post http://paulklemm.com/blog/2017-02-12-fix-onload-failed-rjava-macos/, which addresses the rJava load fail. The dyn.load(...)
command didn't work initially so I had to install the latest version of Java (link in tabularizer instructions) and the Java Development Kit (link in blog post).
Once Java and JDK were installed, I ran the code at the end of the post.
dyn.load(paste0(system2('/usr/libexec/java_home', stdout = TRUE), '/jre/lib/server/libjvm.dylib'))
Then I installed and loaded tabularizer
.
ghit::install_github(c("ropensci/tabulizerjars", "ropensci/tabulizer"), verbose = T)
library(tabulizer)
In summary, installing the latest versions of Java and Java Development Kit seemed to do the trick. Hope this helps!