wheretrue / exon

Exon is an OLAP query engine specifically for biology and life science applications.
https://www.wheretrue.dev/docs/exon/
Other
34 stars 2 forks source link

exon-R installation error #240

Open Ed2uiz opened 8 months ago

Ed2uiz commented 8 months ago

Hello Trent,

Thanks again for creating exon! I was trying out the R package and encountered an error when installing from source. I am using a Macbook Pro with M2 processor running clang version 14.0.03 (clang-1403.0.22.14.1). R session info included below.

Input: install.packages('exonr', repos = c('https://wheretrue.r-universe.dev', 'https://cloud.r-project.org'))

Error:

warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.3
note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
if [ "" != "true" ]; then \
        rm -Rf /private/var/folders/h8/lxlpbpsx351fll0v5t72bjwh0000gp/T/RtmpV4Lxjm/R.INSTALLee552d602170/exonr/src/.cargo && \
        rm -Rf ./rust/target/release/build; \
    fi
clang -arch arm64 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/opt/R/arm64/lib -o exonr.so entrypoint.o -L./rust/target/release -lexonr -llzma -framework Security -framework Foundation -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
installing to /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/00LOCK-exonr/00new/exonr/libs
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for ‘exonr’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/00LOCK-exonr/00new/exonr/libs/exonr.so':
  dlopen(/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/00LOCK-exonr/00new/exonr/libs/exonr.so, 0x0006): symbol not found in flat namespace '_lzma_stream_encoder_mt'
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/exonr’

The downloaded source packages are in
    ‘/private/var/folders/h8/lxlpbpsx351fll0v5t72bjwh0000gp/T/Rtmpph5GkP/downloaded_packages’
Warning message:
In install.packages("exonr", repos = c("https://wheretrue.r-universe.dev",  :
  installation of package ‘exonr’ had non-zero exit status

Rsession:

> sessionInfo()
R version 4.3.0 (2023-04-21)
Platform: aarch64-apple-darwin20 (64-bit)
Running under: macOS Ventura 13.3.1

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/lib/libRlapack.dylib;  LAPACK version 3.11.0

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: America/New_York
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] roxygen2_7.2.3 devtools_2.4.5 usethis_2.2.2

loaded via a namespace (and not attached):
 [1] miniUI_0.1.1.1    compiler_4.3.0    crayon_1.5.2      promises_1.2.1
 [5] Rcpp_1.0.11       xml2_1.3.5        stringr_1.5.0     callr_3.7.3
 [9] later_1.3.1       fastmap_1.1.1     mime_0.12         R6_2.5.1
[13] knitr_1.44        htmlwidgets_1.6.2 profvis_0.3.8     shiny_1.7.5
[17] rlang_1.1.1       cachem_1.0.8      stringi_1.7.12    xfun_0.40
[21] httpuv_1.6.11     fs_1.6.3          pkgload_1.3.2.1   memoise_2.0.1
[25] cli_3.6.1         magrittr_2.0.3    ps_1.7.5          digest_0.6.33
[29] processx_3.8.2    xtable_1.8-4      remotes_2.4.2.1   lifecycle_1.0.3
[33] prettyunits_1.1.1 vctrs_0.6.3       glue_1.6.2        urlchecker_1.0.1
[37] sessioninfo_1.2.2 pkgbuild_1.4.2    purrr_1.0.2       tools_4.3.0
[41] ellipsis_0.3.2    htmltools_0.5.6
tshauck commented 8 months ago

Hey Eddy -- sorry it's giving you trouble... would you be able to check if you have xz installed, or install it if not and try again: brew install xz (https://formulae.brew.sh/formula/xz)?

Either way, I'll follow back up with the r-universe folks this week to see how to get prebuilt-binaries back up (or look into alternatives).

Please let me know how it goes, and thanks for working through it w/ me.

Ed2uiz commented 8 months ago

Hey Trent,

No worries, happy to help troubleshoot. It looks like I have the latest version of xz installed. I re-installed it for good measure, tried the install of exon again using the r-universe link, and I encountered the same error above.

❯ brew info xz
==> xz: stable 5.4.4 (bottled)
General-purpose data compression with high compression ratio
https://tukaani.org/xz/
/opt/homebrew/Cellar/xz/5.4.4 (163 files, 2.6MB) *
  Poured from bottle using the formulae.brew.sh API on 2023-10-30 at 12:52:57

I was able to succesfully install exonR on 4.2.1 Platform: x86_64-apple-darwin17.0 (64-bit) and 4.2.1 Platform: x86_64-pc-linux-gnu (64-bit), but not on aarch64-apple-darwin20 so I suspect the error has something to do with the ARM processor. I will use the x86 implementation for now, thanks!

tshauck commented 8 months ago

Ok cool, thanks for checking xz and glad you're unblocked at least. I'll keep this open and follow up when I know more.