Skip to content

Conversation

@javierluraschi
Copy link
Contributor

@javierluraschi javierluraschi commented Mar 16, 2019

Support for building [R] package in Windows x64/x86.

Fixes https://issues.apache.org/jira/browse/ARROW-4911 which helps us work towards releasing in CRAN: https://issues.apache.org/jira/browse/ARROW-3204.

@@ -0,0 +1,9 @@
# Download static arrow from rwinlib
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems weird to me as a non-R users. Can you explain to me what this is about and whether this is going to be permanent?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I also find it weird to not have the ability to build the static Arrow library using endogenous (aka inside apache/arrow) scripts

Copy link
Contributor Author

@javierluraschi javierluraschi Mar 18, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes for sure. This is to help us get the package in CRAN.

While CRAN supports compiling packages with native code, it has several restrictions. Therefore, it is a common practice to precompile binaries for CRAN in Window that are downloaded when the package is build and tested in the CRAN build machines.

Short term, I think we can start by compiling ourselves the arrow binaries, but long term, there is nothing preventing us from automating this process in the arrow codebase.

Out of curiosity, how does this work with pip install packages? Does https://pypi.org provide sufficient infrastructure to compile all arrow binaries from source? Or do arrow maintainers upload precompiled binaries? How are those binaries built? Are the pip install binaries built automatically in the arrow project?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On https://pypi.org we provide pre-compiled binaries that are built and uploaded on each Arrow release. We have build infrastructure in https://github.com/apache/arrow/tree/master/dev/tasks to build all the binary releases of Arrow directly using CI services (for Python and CentOS/Debian packages). pip install from the source package on PyPI is only working when you have the C++ binaries installed, we hope to provide at one time a source Python package that is self-contained but as >95% of all users use the binary packages, this is not a concern at the moment.

Short term, I think we can start by compiling ourselves the arrow binaries, but long term, there is nothing preventing us from automating this process in the arrow codebase.

Yes, we should automate this for R/CRAN as we do it for Python. As far as I understand it currently, you would need a static libarrow.a, libparquet.a and possibly a libarrow_bundled_thirdparty_dependencies.a built with MinGW available that is then pulled by CRAN to build the final package? It would then be sufficient to update the build of these static libs on each release?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, the following libraries would be needed:

  • parquet
  • arrow
  • thrift
  • boost_regex-mt-s
  • double-conversion

To automate building the R binaries in the arrow repo we would have to mimic the following repos (for the packages we need, not all):

It's probably not a ton of work since they already contain AppVeyor scripts; however, we might hit additional issues we are currently not aware of while publishing to CRAN. So I would suggest we focus on publishing in CRAN and then start automating additional build components as needed.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW I'm a bit lost as to how getting on CRAN is going to be possible without Linux packages in the upstream package managers. This hasn't been explained anywhere

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes for sure, CRAN requires two mayor platforms, which we now support: OS X and Windows. Here is the reference:

Package authors should make all reasonable efforts to provide cross-platform portable code. Packages will not normally be accepted that do not run on at least two of the major R platforms. Cases for Windows-only packages will be considered, but CRAN may not be the most appropriate place to host them.

https://cran.r-project.org/web/packages/policies.html

@javierluraschi
Copy link
Contributor Author

Are we missing anything else to merge this one? Thanks!

@javierluraschi
Copy link
Contributor Author

Actually, this looks related to this change:

3.78s$ $TRAVIS_BUILD_DIR/ci/travis_release_audit.sh
NOT APPROVED: r/src/Makevars.win (apache-arrow/r/src/Makevars.win): false
NOT APPROVED: r/tools/winlibs.R (apache-arrow/r/tools/winlibs.R): false
2 unapproved licences. Check rat report: rat.txt

Are there any useful pointers out there to troubleshot this tool? Or can someone already understand what this failures mean? Investigating...

@javierluraschi
Copy link
Contributor Author

Figure it out, output from running Apache Rat locally...

!????? ./r/src/Makevars.win
!????? ./r/tools/winlibs.R

Updating PR...

# specific language governing permissions and limitations
# under the License.

VERSION = 0.12.0.9000
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also update dev/release/00-prepare.sh when you need to put version in files?
See also: https://github.com/apache/arrow/blob/master/dev/release/00-prepare.sh#L92-L98

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure thing, updated.

@cmorgan
Copy link

cmorgan commented Mar 28, 2019

hi, what's the best way to get Arrow running within R on Windows? I notice that the conda pkg r-arrow https://anaconda.org/conda-forge/r-arrow does not have a Windows build target - are there any out there?

@wesm
Copy link
Member

wesm commented Mar 29, 2019

@cmorgan my understanding is that the R community intends to make a CRAN submission after the 0.13 release is out (being voted on right now)

@romainfrancois
Copy link
Contributor

This now installs cleanly on win builder without the warnings.
* installing *source* package 'arrow' ...
** using staged installation

   **********************************************
   WARNING: this package has a configure script
         It probably needs manual configuration
   **********************************************


** libs

*** arch - i386
"D:/RCompile/recent/R/bin/i386/Rscript.exe" "../tools/winlibs.R" 0.12.0.9000
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c RcppExports.cpp -o RcppExports.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array.cpp -o array.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array__to_vector.cpp -o array__to_vector.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array_from_vector.cpp -o array_from_vector.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c arraydata.cpp -o arraydata.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c buffer.cpp -o buffer.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c chunkedarray.cpp -o chunkedarray.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c column.cpp -o column.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compression.cpp -o compression.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compute.cpp -o compute.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c csv.cpp -o csv.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c datatype.cpp -o datatype.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c feather.cpp -o feather.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c field.cpp -o field.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c io.cpp -o io.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c memorypool.cpp -o memorypool.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c message.cpp -o message.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c parquet.cpp -o parquet.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatch.cpp -o recordbatch.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchreader.cpp -o recordbatchreader.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchwriter.cpp -o recordbatchwriter.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c symbols.cpp -o symbols.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c table.cpp -o table.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c threadpool.cpp -o threadpool.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -shared -s -static-libgcc -o arrow.dll tmp.def RcppExports.o array.o array__to_vector.o array_from_vector.o arraydata.o buffer.o chunkedarray.o column.o compression.o compute.o csv.o datatype.o feather.o field.o io.o memorypool.o message.o parquet.o recordbatch.o recordbatchreader.o recordbatchwriter.o symbols.o table.o threadpool.o -L../windows/arrow-0.12.0.9000/lib-4.9.3/i386 -L../windows/arrow-0.12.0.9000/lib/i386 -lparquet -larrow -lthrift -lboost_regex-mt-s -ldouble-conversion -lz -lws2_32 -Ld:/Compiler/gcc-4.9.3/local330/lib/i386 -Ld:/Compiler/gcc-4.9.3/local330/lib -LD:/RCompile/recent/R/bin/i386 -lR
"D:/RCompile/recent/R/bin/i386/Rscript.exe" "../tools/winlibs.R" 0.12.0.9000
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c RcppExports.cpp -o RcppExports.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array.cpp -o array.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array__to_vector.cpp -o array__to_vector.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array_from_vector.cpp -o array_from_vector.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c arraydata.cpp -o arraydata.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c buffer.cpp -o buffer.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c chunkedarray.cpp -o chunkedarray.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c column.cpp -o column.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compression.cpp -o compression.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compute.cpp -o compute.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c csv.cpp -o csv.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c datatype.cpp -o datatype.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c feather.cpp -o feather.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c field.cpp -o field.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c io.cpp -o io.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c memorypool.cpp -o memorypool.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c message.cpp -o message.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c parquet.cpp -o parquet.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatch.cpp -o recordbatch.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchreader.cpp -o recordbatchreader.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchwriter.cpp -o recordbatchwriter.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c symbols.cpp -o symbols.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c table.cpp -o table.o
d:/Compiler/gcc-4.9.3/mingw_32/bin/g++  -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c threadpool.cpp -o threadpool.o
installing to d:/RCompile/CRANguest/R-devel/lib/00LOCK-arrow/00new/arrow/libs/i386

*** arch - x64
"D:/RCompile/recent/R/bin/x64/Rscript.exe" "../tools/winlibs.R" 0.12.0.9000
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c RcppExports.cpp -o RcppExports.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array.cpp -o array.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array__to_vector.cpp -o array__to_vector.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array_from_vector.cpp -o array_from_vector.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c arraydata.cpp -o arraydata.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c buffer.cpp -o buffer.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c chunkedarray.cpp -o chunkedarray.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c column.cpp -o column.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compression.cpp -o compression.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compute.cpp -o compute.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c csv.cpp -o csv.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c datatype.cpp -o datatype.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c feather.cpp -o feather.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c field.cpp -o field.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c io.cpp -o io.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c memorypool.cpp -o memorypool.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c message.cpp -o message.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c parquet.cpp -o parquet.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatch.cpp -o recordbatch.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchreader.cpp -o recordbatchreader.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchwriter.cpp -o recordbatchwriter.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c symbols.cpp -o symbols.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c table.cpp -o table.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c threadpool.cpp -o threadpool.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -shared -s -static-libgcc -o arrow.dll tmp.def RcppExports.o array.o array__to_vector.o array_from_vector.o arraydata.o buffer.o chunkedarray.o column.o compression.o compute.o csv.o datatype.o feather.o field.o io.o memorypool.o message.o parquet.o recordbatch.o recordbatchreader.o recordbatchwriter.o symbols.o table.o threadpool.o -L../windows/arrow-0.12.0.9000/lib-4.9.3/x64 -L../windows/arrow-0.12.0.9000/lib/x64 -lparquet -larrow -lthrift -lboost_regex-mt-s -ldouble-conversion -lz -lws2_32 -Ld:/Compiler/gcc-4.9.3/local330/lib/x64 -Ld:/Compiler/gcc-4.9.3/local330/lib -LD:/RCompile/recent/R/bin/x64 -lR
"D:/RCompile/recent/R/bin/x64/Rscript.exe" "../tools/winlibs.R" 0.12.0.9000
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c RcppExports.cpp -o RcppExports.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array.cpp -o array.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array__to_vector.cpp -o array__to_vector.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c array_from_vector.cpp -o array_from_vector.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c arraydata.cpp -o arraydata.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c buffer.cpp -o buffer.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c chunkedarray.cpp -o chunkedarray.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c column.cpp -o column.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compression.cpp -o compression.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c compute.cpp -o compute.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c csv.cpp -o csv.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c datatype.cpp -o datatype.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c feather.cpp -o feather.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c field.cpp -o field.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c io.cpp -o io.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c memorypool.cpp -o memorypool.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c message.cpp -o message.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c parquet.cpp -o parquet.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatch.cpp -o recordbatch.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchreader.cpp -o recordbatchreader.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c recordbatchwriter.cpp -o recordbatchwriter.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c symbols.cpp -o symbols.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c table.cpp -o table.o
d:/Compiler/gcc-4.9.3/mingw_64/bin/g++ -m64 -std=gnu++11 -I"D:/RCompile/recent/R/include" -DNDEBUG -I../windows/arrow-0.12.0.9000/include -DARROW_STATIC -DPARQUET_STATIC -I"d:/RCompile/CRANpkg/lib/3.6/Rcpp/include"   -I"d:/Compiler/gcc-4.9.3/local330/include"     -O2 -Wall  -mtune=core2 -c threadpool.cpp -o threadpool.o
installing to d:/RCompile/CRANguest/R-devel/lib/00LOCK-arrow/00new/arrow/libs/x64
** 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
*** arch - i386
*** arch - x64
** testing if installed package can be loaded from final location
*** arch - i386
*** arch - x64
** testing if installed package keeps a record of temporary installation path
* MD5 sums
packaged installation of 'arrow' as arrow_0.12.0.9000.zip
* DONE (arrow)

@romainfrancois
Copy link
Contributor

There is only the expected NOTE because it's a new package. Artefacts here: https://win-builder.r-project.org/800J367Hmebs/ (but this is ephemeral)

* using log directory 'd:/RCompile/CRANguest/R-devel/arrow.Rcheck'
* using R Under development (unstable) (2019-03-29 r76288)
* using platform: x86_64-w64-mingw32 (64-bit)
* using session charset: ISO8859-1
* checking for file 'arrow/DESCRIPTION' ... OK
* this is package 'arrow' version '0.12.0.9000'
* package encoding: UTF-8
* checking CRAN incoming feasibility ... NOTE
Maintainer: 'Romain Fran�ois <romain@rstudio.com>'

New submission

Version contains large components (0.12.0.9000)
* checking package namespace information ... OK
* checking package dependencies ... OK
* checking if this is a source package ... OK
* checking if there is a namespace ... OK
* checking for hidden files and directories ... OK
* checking for portable file names ... OK
* checking whether package 'arrow' can be installed ... OK
* checking installed package size ... OK
* checking package directory ... OK
* checking for future file timestamps ... OK
* checking DESCRIPTION meta-information ... OK
* checking top-level files ... OK
* checking for left-over files ... OK
* checking index information ... OK
* checking package subdirectories ... OK
* checking R files for non-ASCII characters ... OK
* checking R files for syntax errors ... OK
* loading checks for arch 'i386'
** checking whether the package can be loaded ... OK
** checking whether the package can be loaded with stated dependencies ... OK
** checking whether the package can be unloaded cleanly ... OK
** checking whether the namespace can be loaded with stated dependencies ... OK
** checking whether the namespace can be unloaded cleanly ... OK
** checking loading without being on the library search path ... OK
** checking use of S3 registration ... OK
* loading checks for arch 'x64'
** checking whether the package can be loaded ... OK
** checking whether the package can be loaded with stated dependencies ... OK
** checking whether the package can be unloaded cleanly ... OK
** checking whether the namespace can be loaded with stated dependencies ... OK
** checking whether the namespace can be unloaded cleanly ... OK
** checking loading without being on the library search path ... OK
** checking use of S3 registration ... OK
* checking dependencies in R code ... OK
* checking S3 generic/method consistency ... OK
* checking replacement functions ... OK
* checking foreign function calls ... OK
* checking R code for possible problems ... [13s] OK
* checking Rd files ... OK
* checking Rd metadata ... OK
* checking Rd line widths ... OK
* checking Rd cross-references ... OK
* checking for missing documentation entries ... OK
* checking for code/documentation mismatches ... OK
* checking Rd \usage sections ... OK
* checking Rd contents ... OK
* checking for unstated dependencies in examples ... OK
* checking line endings in shell scripts ... OK
* checking line endings in C/C++/Fortran sources/headers ... OK
* checking line endings in Makefiles ... OK
* checking compilation flags in Makevars ... OK
* checking for GNU extensions in Makefiles ... OK
* checking for portable use of $(BLAS_LIBS) and $(LAPACK_LIBS) ... OK
* checking use of SHLIB_OPENMP_*FLAGS in Makefiles ... OK
* checking pragmas in C/C++ headers and code ... OK
* checking compiled code ... OK
* checking examples ...
** running examples for arch 'i386' ... [2s] OK
** running examples for arch 'x64' ... [2s] OK
* checking for unstated dependencies in 'tests' ... OK
* checking tests ...
** running tests for arch 'i386' ... [10s] OK
  Running 'testthat.R' [9s]
** running tests for arch 'x64' ... [11s] OK
  Running 'testthat.R' [10s]
* checking PDF version of manual ... OK
* DONE
Status: 1 NOTE

@wesm
Copy link
Member

wesm commented Mar 29, 2019

ah, did this need to go into 0.13? If you have to submit a patched version to CRAN it's up to the R community

@romainfrancois
Copy link
Contributor

Those are only changes in the r/ directory, likely we would release something after arrow 0.13 is out so that we can effectively depend on it.

romainfrancois added a commit to romainfrancois/arrow-r-ci that referenced this pull request Apr 3, 2019
@romainfrancois
Copy link
Contributor

This PR is what I'd like to submit as the first release of the R package. it passes R CMD check on both Mac OS and Windows. So in the absence of Debian packages, that's good enough.

I can submit to CRAN either way, but I guess it would be better that this is merged first ?

@romainfrancois
Copy link
Contributor

Win builder results: https://win-builder.r-project.org/t8xaTt5HRKiO/

@romainfrancois
Copy link
Contributor

results on 🍎 with home brew on this pr: https://travis-ci.org/romainfrancois/arrow-r-ci/builds/515248734

@wesm
Copy link
Member

wesm commented Apr 3, 2019

@romainfrancois you're a committer so you can merge this when you're satisfied

if you publish to CRAN please be careful to not advertise the package as being an official artifact

@romainfrancois
Copy link
Contributor

I still have to learn how exactly a pr is squashed. It does not look like you’d just use the github ui as usual.

I’ll get up to speed on that.

This is far from done, so we probably won’t advertise too much anyway. What would it mean to be an official artifact though ?

@wesm
Copy link
Member

wesm commented Apr 3, 2019

You have never merged a patch? The merge tool is here, take a look at the README

https://github.com/apache/arrow/tree/master/dev#arrow-developer-scripts

@wesm
Copy link
Member

wesm commented Apr 3, 2019

Official releases are only the signed and checksum'd artifacts that are voted on by the PMC. Take a look at the source and binary artifacts in the 0.13.0 release vote

https://lists.apache.org/thread.html/8ccfa303dc8cf9b093911c0f681efb35b64cbe7125d0ce1b05afa55c@%3Cdev.arrow.apache.org%3E

@romainfrancois
Copy link
Contributor

Thanks for the info.

@kszucs
Copy link
Member

kszucs commented Apr 8, 2019

@romainfrancois is it ready to go?

@romainfrancois
Copy link
Contributor

yes @kszucs but I'll take this as an opportunity to learn about the merge tools ... on it today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants