[ 
https://issues.apache.org/jira/browse/ARROW-14371?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Keane updated ARROW-14371:
-----------------------------------
    Description: 
There are a few ways we could make the R-only development guide better (this 
list isn't exhaustive, but are things that have come up in the discussion here):

* A note that the brew-based method and the build-your-own methods are 
incompatible (mostly because of {{ARROW_HOME}}, but folks using brew shouldn't 
need to even think about that, so we should be careful how we phrase this)
* A note about confirming that {{brew install apache-arrow --HEAD}} completes 
successfully and how to confirm it's being picked up in the install process
* This might be part of the point above, but a description of what the 
difference/meaning of the following are: {{*** Using Homebrew 
${PKG_BREW_NAME}}}, {{*** Arrow C++ libraries found via pkg-config}}, any 
mention of {{autobrew}}. Specifically, if one is trying to use homebrew for 
development, only the first one is ok, if someone sees something else that 
means that something isn't quite right.


Original ticket description:
I cannot get a working install using the [R-only development 
instructions|https://arrow.apache.org/docs/r/articles/developing.html#r-only-development].
  

Steps I took:
1. run brew install apache-arrow --HEAD

2. run unset ARROW_HOME

3. clone arrow repo

4. navigate to arrow/r

5. run R CMD INSTALL .

{code:r}
(base) dragos@Dragoss-MacBook-Pro r % R CMD INSTALL .
* installing to library 
‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library’
* installing *source* package ‘arrow’ ...
** using staged installation
*** Arrow C++ libraries found via pkg-config at
**** Warning: library version mismatch
**** C++ is 5.0.0 but R is 5.0.0.9000
**** If installation fails, upgrade the C++ library to match
**** or retry with ARROW_USE_PKG_CONFIG=false
PKG_CFLAGS=-I/usr/local/Cellar/apache-arrow/5.0.0_2/include 
-DARROW_R_WITH_ARROW -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET 
-DARROW_R_WITH_JSON
PKG_LIBS=-L/usr/local/Cellar/apache-arrow/5.0.0_2/lib -larrow_dataset -lparquet 
-larrow
** libs
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c RTasks.cpp 
-o RTasks.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c altrep.cpp 
-o altrep.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c array.cpp -o 
array.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
array_to_vector.cpp -o array_to_vector.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
arraydata.cpp -o arraydata.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
arrowExports.cpp -o arrowExports.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c buffer.cpp 
-o buffer.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
chunkedarray.cpp -o chunkedarray.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
compression.cpp -o compression.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
compute-exec.cpp -o compute-exec.o
compute-exec.cpp:25:10: fatal error: 'arrow/compute/exec/options.h' file not 
found
#include <arrow/compute/exec/options.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [compute-exec.o] Error 1
ERROR: compilation failed for package ‘arrow’
* removing 
‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/arrow’
{code}

  was:
I cannot get a working install using the [R-only development 
instructions|https://arrow.apache.org/docs/r/articles/developing.html#r-only-development].
  

Steps I took:
1. run brew install apache-arrow --HEAD

2. run unset ARROW_HOME

3. clone arrow repo

4. navigate to arrow/r

5. run R CMD INSTALL .

{code:r}
(base) dragos@Dragoss-MacBook-Pro r % R CMD INSTALL .
* installing to library 
‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library’
* installing *source* package ‘arrow’ ...
** using staged installation
*** Arrow C++ libraries found via pkg-config at
**** Warning: library version mismatch
**** C++ is 5.0.0 but R is 5.0.0.9000
**** If installation fails, upgrade the C++ library to match
**** or retry with ARROW_USE_PKG_CONFIG=false
PKG_CFLAGS=-I/usr/local/Cellar/apache-arrow/5.0.0_2/include 
-DARROW_R_WITH_ARROW -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET 
-DARROW_R_WITH_JSON
PKG_LIBS=-L/usr/local/Cellar/apache-arrow/5.0.0_2/lib -larrow_dataset -lparquet 
-larrow
** libs
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c RTasks.cpp 
-o RTasks.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c altrep.cpp 
-o altrep.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c array.cpp -o 
array.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
array_to_vector.cpp -o array_to_vector.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
arraydata.cpp -o arraydata.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
arrowExports.cpp -o arrowExports.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c buffer.cpp 
-o buffer.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
chunkedarray.cpp -o chunkedarray.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
compression.cpp -o compression.o
clang++ -mmacosx-version-min=10.13 -std=gnu++11 
-I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
-I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
-DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
-I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
compute-exec.cpp -o compute-exec.o
compute-exec.cpp:25:10: fatal error: 'arrow/compute/exec/options.h' file not 
found
#include <arrow/compute/exec/options.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [compute-exec.o] Error 1
ERROR: compilation failed for package ‘arrow’
* removing 
‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/arrow’
{code}


> [R] Improve the R-only development guide
> ----------------------------------------
>
>                 Key: ARROW-14371
>                 URL: https://issues.apache.org/jira/browse/ARROW-14371
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: R
>         Environment: MacBook Pro (13-inch, 2018, Four Thunderbolt 3 Ports) 
> running macOS BigSur (11.6)
>            Reporter: Dragoș Moldovan-Grünfeld
>            Priority: Major
>              Labels: documentation
>         Attachments: arrow_install_error
>
>
> There are a few ways we could make the R-only development guide better (this 
> list isn't exhaustive, but are things that have come up in the discussion 
> here):
> * A note that the brew-based method and the build-your-own methods are 
> incompatible (mostly because of {{ARROW_HOME}}, but folks using brew 
> shouldn't need to even think about that, so we should be careful how we 
> phrase this)
> * A note about confirming that {{brew install apache-arrow --HEAD}} completes 
> successfully and how to confirm it's being picked up in the install process
> * This might be part of the point above, but a description of what the 
> difference/meaning of the following are: {{*** Using Homebrew 
> ${PKG_BREW_NAME}}}, {{*** Arrow C++ libraries found via pkg-config}}, any 
> mention of {{autobrew}}. Specifically, if one is trying to use homebrew for 
> development, only the first one is ok, if someone sees something else that 
> means that something isn't quite right.
> Original ticket description:
> I cannot get a working install using the [R-only development 
> instructions|https://arrow.apache.org/docs/r/articles/developing.html#r-only-development].
>   
> Steps I took:
> 1. run brew install apache-arrow --HEAD
> 2. run unset ARROW_HOME
> 3. clone arrow repo
> 4. navigate to arrow/r
> 5. run R CMD INSTALL .
> {code:r}
> (base) dragos@Dragoss-MacBook-Pro r % R CMD INSTALL .
> * installing to library 
> ‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library’
> * installing *source* package ‘arrow’ ...
> ** using staged installation
> *** Arrow C++ libraries found via pkg-config at
> **** Warning: library version mismatch
> **** C++ is 5.0.0 but R is 5.0.0.9000
> **** If installation fails, upgrade the C++ library to match
> **** or retry with ARROW_USE_PKG_CONFIG=false
> PKG_CFLAGS=-I/usr/local/Cellar/apache-arrow/5.0.0_2/include 
> -DARROW_R_WITH_ARROW -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET 
> -DARROW_R_WITH_JSON
> PKG_LIBS=-L/usr/local/Cellar/apache-arrow/5.0.0_2/lib -larrow_dataset 
> -lparquet -larrow
> ** libs
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c RTasks.cpp 
> -o RTasks.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c altrep.cpp 
> -o altrep.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c array.cpp 
> -o array.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> array_to_vector.cpp -o array_to_vector.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> arraydata.cpp -o arraydata.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> arrowExports.cpp -o arrowExports.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c buffer.cpp 
> -o buffer.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> chunkedarray.cpp -o chunkedarray.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> compression.cpp -o compression.o
> clang++ -mmacosx-version-min=10.13 -std=gnu++11 
> -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG 
> -I/usr/local/Cellar/apache-arrow/5.0.0_2/include -DARROW_R_WITH_ARROW 
> -DARROW_R_WITH_PARQUET -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON 
> -I../inst/include/  -I/usr/local/include   -fPIC  -Wall -g -O2  -c 
> compute-exec.cpp -o compute-exec.o
> compute-exec.cpp:25:10: fatal error: 'arrow/compute/exec/options.h' file not 
> found
> #include <arrow/compute/exec/options.h>
>          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
> make: *** [compute-exec.o] Error 1
> ERROR: compilation failed for package ‘arrow’
> * removing 
> ‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/arrow’
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to