> library("arrow")
Error: package or namespace load failed for βarrowβ in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/usr/local/lib/R/site-library/arrow/libs/arrow.so':
/usr/local/lib/R/site-library/arrow/libs/arrow.so: cannot open shared object file: No such file or directory
>
I checked the directory and arrow.so definitely exists and I've set the read/write permission on the file to all but still nothing. What's wrong? Thanks.
> pak::pkg_sysreqs("arrow")
ββ Install scripts ββββββββββββββββββββββββββββββββββββββ Ubuntu 22.04 ββ
apt-get -y update
apt-get -y install libcurl4-openssl-dev libssl-dev
ββ Packages and their system dependencies βββββββββββββββββββββββββββββββ
arrow β libcurl4-openssl-dev, libssl-dev
Or, if you use pak to install the package, then it will automatically install the system requirements for you. (This is if you are the root user, or have password-less sudo. Otherwise it'll still print the system packages you need.)
Thank you. So much interesting stuff but no luck. I DO have the libs installed.
root@ip-172-31-35-136:/home/ubuntu# apt-get -y install libcurl4-openssl-dev libssl-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libcurl4-openssl-dev is already the newest version (7.81.0-1ubuntu1.13).
libssl-dev is already the newest version (3.0.2-0ubuntu1.10).
0 upgraded, 0 newly installed, 0 to remove and 25 not upgraded.
root@ip-172-31-35-136:/home/ubuntu#
and apparently pak hangs when building arrow from source, just like install.,packages() does (which is why I downloaded the binary). There's this:
The binary package is not installed. The build always hangs.
> options(ARROW_R_DEV=TRUE)
> install.packages("arrow")
Installing package into β/usr/local/lib/R/site-libraryβ
(as βlibβ is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/arrow_12.0.1.1.tar.gz'
Content type 'application/x-gzip' length 4097373 bytes (3.9 MB)
==================================================
downloaded 3.9 MB
* installing *source* package βarrowβ ...
** package βarrowβ successfully unpacked and MD5 sums checked
** using staged installation
*** Building on linux aarch64
*** Found local C++ source: 'tools/cpp'
*** Building libarrow from source
For build options and troubleshooting, see the install guide:
https://arrow.apache.org/docs/r/articles/install.html
**** cmake: /usr/bin/cmake
**** arrow
I am sorry, I don't understand. So if you run this below, that hangs?
I also don't get how file says that the file is a ELF 64-bit LSB shared object and then ldd says that it is not a dynamic executable?
and there it sits.
Is it possible that it is taking very long? If you look all the processes, can you compiler processes compiling arrow? On a relatively modern machine it often takes 20-30 minutes to compile arrow for me.
yes. but I think I solved my problem. I was running on an EC2 ARM architecture instance, because it's cheaper. I switched to x86 and used r4u to get the Ubuntu binaries rather than compile and that worked. Thanks for your patient replies.
Right, you were probably using a small instance, and compiling arrow takes very long, especially without a lot of memory. That's why the compilation was hanging.
Btw. if you are using x86_64 already, you can also use PPPM (https://packagemanager.posit.co/), and pak to install binary R packages, together with their system requirements automatically.