Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation fails with ICU version 65 #31

Closed
bluebear94 opened this issue Dec 17, 2019 · 1 comment
Closed

Installation fails with ICU version 65 #31

bluebear94 opened this issue Dec 17, 2019 · 1 comment
Labels
question Further information is requested waiting for answer If not answered, the issue will be closed in 7 days.

Comments

@bluebear94
Copy link

bluebear94 commented Dec 17, 2019

openxlsx assumes that the version of the system ICU library is 64 and thus fails to install if a different version is installed.

To Reproduce: try to install openxlsx on a system with ICU version 65

Expected behavior: package should install

Actual behavior: I get the following output:

> install.packages("openxlsx")
Installing package into ‘/home/kozet/R/x86_64-pc-linux-gnu-library/3.6’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/src/contrib/openxlsx_4.1.4.tar.gz'
Content type 'application/x-gzip' length 1383224 bytes (1.3 MB)
==================================================
downloaded 1.3 MB

* installing *source* package ‘openxlsx’ ...
** package ‘openxlsx’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c RcppExports.cpp -o RcppExports.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c helper_functions.cpp -o helper_functions.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c load_workbook.cpp -o load_workbook.o
gcc -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c openxlsx_init.c -o openxlsx_init.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c read_workbook.cpp -o read_workbook.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c write_data.cpp -o write_data.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c write_file.cpp -o write_file.o
g++ -std=gnu++11 -I"/usr/include/R/" -DNDEBUG  -I"/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/Rcpp/include" -D_FORTIFY_SOURCE=2  -fpic  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -c write_file_2.cpp -o write_file_2.o
g++ -std=gnu++11 -shared -L/usr/lib64/R/lib -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o openxlsx.so RcppExports.o helper_functions.o load_workbook.o openxlsx_init.o read_workbook.o write_data.o write_file.o write_file_2.o -L/usr/lib64/R/lib -lR
installing to /home/kozet/R/x86_64-pc-linux-gnu-library/3.6/00LOCK-openxlsx/00new/openxlsx/libs
** R
** inst
** byte-compile and prepare package for lazy loading
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  unable to load shared object '/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/stringi/libs/stringi.so':
  libicui18n.so.64: cannot open shared object file: No such file or directory
Calls: <Anonymous> ... namespaceImport -> loadNamespace -> library.dynam -> dyn.load
Execution halted
ERROR: lazy loading failed for package ‘openxlsx’
* removing ‘/home/kozet/R/x86_64-pc-linux-gnu-library/3.6/openxlsx’
Warning in install.packages :
  installation of package ‘openxlsx’ had non-zero exit status

The downloaded source packages are in
	‘/tmp/Rtmp7IjBBN/downloaded_packages’

Workaround: it should be possible to symlink libicui18n.so.64 to libicui18n.so.65 nope, ICU has versioned symbols

@ycphs
Copy link
Owner

ycphs commented Dec 27, 2019

openxlsx imports stringi functions.

The error message you posted shows that the problem is not the openxlsx package, but the stringi package.

please try to run:

install.packages("openxlsx", dependencies = T)

if it fails please check the ICU version for the Stringi package.

stringi::stri_info()$ICU.version

@ycphs ycphs added the question Further information is requested label Dec 30, 2019
@ycphs ycphs added the waiting for answer If not answered, the issue will be closed in 7 days. label May 4, 2020
@ycphs ycphs closed this as completed Jul 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested waiting for answer If not answered, the issue will be closed in 7 days.
Projects
None yet
Development

No branches or pull requests

2 participants