Michael Chirico created ARROW-6169:
--------------------------------------

             Summary: A bit confused by arrow::install_arrow() inR
                 Key: ARROW-6169
                 URL: https://issues.apache.org/jira/browse/ARROW-6169
             Project: Apache Arrow
          Issue Type: Improvement
          Components: R
            Reporter: Michael Chirico


Am trying to get up and running on arrow from R for the first time (macOS 
Mojave 10.14.6)

Started with
{code:java}
install.packages('arrow') #success!
write_parquet(iris, 'tmp.parquet') #oh no!{code}
and hit the error:

> Error in Table__from_dots(dots, schema) : Cannot call Table__from_dots(). 
>Please use arrow::install_arrow() to install required runtime libraries. 

OK, easy enough:
{code:java}
arrow::install_arrow() 
{code}
With output:
{code:java}
You may be able to get a development version of the Arrow C++ library using 
Homebrew: `brew install apache-arrow --HEAD` Or, see the Arrow C++ developer 
guide <https://arrow.apache.org/docs/developers/cpp.html> for instructions on 
building the library from source.

After you've installed the C++ library, you'll need to reinstall the R package 
from source to find it.

Refer to the R package README 
<https://github.com/apache/arrow/blob/master/r/README.md> for further details.

If you have other trouble, or if you think this message could be improved, 
please report an issue here: 
<https://issues.apache.org/jira/projects/ARROW/issues>
{code}
A few points of confusion for me as a first time user:

A bit surprised I'm being directed to install the development version? If the 
current CRAN version of {{arrow}} is only compatible with the dev version, I 
guess that could be made more clear in this message. But on the other hand, the 
linked GH README suggests the opposite: "On macOS and Windows, installing a 
binary package from CRAN will handle Arrow’s C++ dependencies for you." 
However, that doesn't appear to have been the case for me.

Oh well, let's just try installing the normal version & see if that works:
{code:java}
$brew install apache-arrow
>install.packages('arrow') #reinstall in fresh session
>arrow::write_parquet(iris, 'tmp.parquet') # same error{code}
Now I try the dev version:
{code:java}
brew install apache-arrow --HEAD
# Error: apache-arrow 0.14.1 is already installed
# To install HEAD, first run `brew unlink apache-arrow`.
brew unlink apache-arrow
brew install apache-arrow --HEAD
# Error: An exception occurred within a child process:
# RuntimeError: /usr/local/opt/autoconf not present or broken
# Please reinstall autoconf. Sorry :(
brew install autoconf
brew install apache-arrow --HEAD
# Error: An exception occurred within a child process:
# RuntimeError: /usr/local/opt/cmake not present or broken
# Please reinstall cmake. Sorry :(
brew install cmake
brew install apache-arrow --HEAD
# cmake ../cpp -DCMAKE_C_FLAGS_RELEASE=-DNDEBUG 
-DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG 
-DCMAKE_INSTALL_PREFIX=/usr/local/Cellar/apache-arrow/HEAD-908b058 
-DCMAKE_BUILD_TYPE=Release -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_VERBOSE_MAKEFIL
# Last 15 lines from 
/Users/michael.chirico/Library/Logs/Homebrew/apache-arrow/01.cmake:
# 
dlopen(/usr/local/lib/python3.7/site-packages/numpy/core/_multiarray_umath.cpython-37m-darwin.so,
# 2): Symbol not found: ___addtf3
# Referenced from: /usr/local/opt/gcc/lib/gcc/9/libquadmath.0.dylib
# Expected in: /usr/lib/libSystem.B.dylib
# in /usr/local/opt/gcc/lib/gcc/9/libquadmath.0.dylib
# Call Stack (most recent call first):
# src/arrow/python/CMakeLists.txt:23 (find_package){code}
Poked around a bit about that arrow and what I see suggests re-installing 
{{scipy}} but that didn't work ({{pip install scipy}} nor {{pip3 install 
scipy}}, though the traceback does suggest it's a Python 3 thing)

So now I'm stuck & not sure how to proceed.

I'll also add that I'm not sure what to make of this:

> After you've installed the C++ library, you'll need to reinstall the R 
>package from source to find it.

What is "find it" referring to exactly? And installing from source here means 
{{R CMD build && R CMD INSTALL}} on the cloned repo?



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to