Nice to hear that it worked.

Updating the docs should not be necessary, we should rather see that we soon 
get a 0.9.0 release out (but that will also take some more weeks)

Uwe

On Sun, Jan 14, 2018, at 2:42 PM, simba nyatsanga wrote:
> Amazing, thanks Uwe!
> 
> I was able to build pyarrow successfully for python 2.7 using your
> workaround. I appreciate that you've got a possible solution for the too.
> 
> Besides the PR getting reviewed by more experienced maintainers, I'm
> thinking to pull your branch and try the building process from scratch.
> Otherwise I was wondering if it's valuable, in the meantime, to update the
> docs with your work around?
> 
> Kind Regards
> Simba
> 
> On Sun, 14 Jan 2018 at 15:17 Uwe L. Korn <uw...@xhochy.com> wrote:
> 
> > Hello Simba,
> >
> > it looks like you are running to
> > https://issues.apache.org/jira/browse/ARROW-1856.
> >
> > To work around this issue, please "unset PARQUET_HOME" before you call the
> > setup.py. Also set PKG_CONFIG_PATH, in your case this should be "export
> > PKG_CONFIG_PATH=/Users/simba/anaconda/envs/pyarrow-dev/lib/pkgconfig". By
> > doing this, you do the package discovery using pkg-config instead of the
> > *_HOME variables. Currently this is the only path on which we can
> > auto-detect the extension of the parquet shared library.
> >
> > Nevertheless, I will take a shot at fixing the issues as it seems that
> > multiple users run into it.
> >
> > Uwe
> >
> > On Thu, Jan 11, 2018, at 11:42 PM, simba nyatsanga wrote:
> > > Hi Wes,
> > >
> > > Apologies for the ambiguity there. To clarify, I used the conda
> > > instructions only to create a conda environment. So I did this
> > >
> > > conda create -y -q -n pyarrow-dev \
> > >       python=2.7 numpy six setuptools cython pandas pytest \
> > >       cmake flatbuffers rapidjson boost-cpp thrift-cpp snappy zlib \
> > >       gflags brotli jemalloc lz4-c zstd -c conda-forge
> > >
> > >
> > > I followed the instructions closely and I've stumbled upon a different
> > > error from the one I initially had encountered. Now the issue seems to be
> > > that when I'm building the Arrow C++ i.e running the following steps:
> > >
> > > mkdir parquet-cpp/build
> > > pushd parquet-cpp/build
> > >
> > > cmake -DCMAKE_BUILD_TYPE=$ARROW_BUILD_TYPE \
> > >       -DCMAKE_INSTALL_PREFIX=$PARQUET_HOME \
> > >       -DPARQUET_BUILD_BENCHMARKS=off \
> > >       -DPARQUET_BUILD_EXECUTABLES=off \
> > >       -DPARQUET_BUILD_TESTS=off \
> > >       ..
> > >
> > > make -j4
> > > make install
> > > popd
> > >
> > >
> > > The make install step generates *libparquet.1.3.2.dylib* as one of the
> > > artefacts, as illustrated below:
> > >
> > > -- Install configuration: "RELEASE"-- Installing:
> > > /Users/simba/anaconda/envs/pyarrow-dev/share/parquet-cpp/cmake/parquet-
> > > cppConfig.cmake--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/share/parquet-cpp/
> > > cmake/parquet-cppConfigVersion.cmake--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.
> > > 1.3.2.dylib--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.
> > > 1.dylib--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/lib/
> > > libparquet.dylib--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.a--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > column_reader.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > column_page.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > column_scanner.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > column_writer.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > encoding.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > exception.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > file_reader.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > file_writer.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > metadata.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > printer.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > properties.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > schema.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > statistics.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > types.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > parquet_version.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/lib/pkgconfig/
> > > parquet.pc--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/api/
> > > io.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/api/
> > > reader.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/api/
> > > writer.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/api/
> > > schema.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > arrow/reader.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > arrow/schema.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/
> > > arrow/writer.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > buffer-builder.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > comparison.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > logging.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > macros.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > memory.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > stopwatch.h--
> > > Installing: /Users/simba/anaconda/envs/pyarrow-dev/include/parquet/util/
> > > visibility.h
> > >
> > >
> > > Subsequently when I want to build a standalone pyarrow wheel by running
> > > this step:
> > >
> > > python setup.py build_ext --build-type=$ARROW_BUILD_TYPE \
> > >        --with-parquet --with-plasma --bundle-arrow-cpp bdist_wheel
> > >
> > >
> > >
> > > Then I get an error where one of the build steps  in the *CMakelists.txt*
> > > expects to find *libparquet.1.0.0.dylib*. The  error is illustrated
> > below:
> > >
> > > running build_ext-- Runnning cmake for pyarrow
> > > cmake
> > -DPYTHON_EXECUTABLE=/Users/simba/anaconda/envs/pyarrow-dev/bin/python
> > >  -DPYARROW_BUILD_PARQUET=on -DPYARROW_BUILD_PLASMA=on
> > > -DPYARROW_BUNDLE_ARROW_CPP=ON -DCMAKE_BUILD_TYPE=release
> > > /Users/simbarashenyatsanga/Projects/personal/oss/arrow/python
> > > INFOCompiler command: /Library/Developer/CommandLineTools/usr/bin/c++
> > > INFOCompiler version: Apple LLVM version 8.0.0
> > > (clang-800.0.42.1)Target: x86_64-apple-darwin15.6.0
> > > Thread model: posixInstalledDir:
> > /Library/Developer/CommandLineTools/usr/bin
> > >
> > > INFOCompiler id: Clang
> > > Selected compiler clang 3.8.0svn
> > > Configured for RELEASE build (set with cmake
> > > -DCMAKE_BUILD_TYPE={release,debug,...})-- Build Type: RELEASE-- Build
> > > output directory:
> > > /Users/simba/Projects/personal/oss/arrow/python/build/temp.macosx-10.9-
> > > x86_64-2.7/release/--
> > > Checking for module 'arrow'--   Found arrow, version 0.9.0-SNAPSHOT--
> > > Arrow ABI version: 0.0.0-- Arrow SO version: 0-- Found the Arrow core
> > > library: /Users/simba/anaconda/envs/pyarrow-dev/lib/libarrow.dylib--
> > > Found the Arrow Python library:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libarrow_python.dylib
> > > Added shared library dependency arrow:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libarrow.dylib
> > > Added shared library dependency arrow_python:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libarrow_python.dylib--
> > > Found the Parquet library:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.dylib
> > > CMake Error: File
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.1.0.0.dylib does
> > > not exist.
> > > CMake Error at CMakeLists.txt:213 (configure_file):
> > >   configure_file Problem configuring file
> > > Call Stack (most recent call first):
> > >   CMakeLists.txt:296 (bundle_arrow_lib)
> > >
> > >
> > > Added shared library dependency parquet:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libparquet.dylib-- Checking
> > > for module 'plasma'--   Found plasma, version-- Plasma ABI version:
> > > 0.0.0-- Plasma SO version: 0-- Found the Plasma core library:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libplasma.dylib-- Found
> > > Plasma executable:
> > > /Users/simba/anaconda/envs/pyarrow-dev/bin/plasma_store
> > > Added shared library dependency libplasma:
> > > /Users/simba/anaconda/envs/pyarrow-dev/lib/libplasma.dylib--
> > > Configuring incomplete, errors occurred!
> > > See also "/Users/simba/Projects/personal/oss/arrow/python/build/
> > > temp.macosx-10.9-x86_64-2.7/CMakeFiles/CMakeOutput.log".
> > > See also "/Users/simba/Projects/personal/oss/arrow/python/build/
> > > temp.macosx-10.9-x86_64-2.7/CMakeFiles/CMakeError.log".error:
> > > command 'cmake' failed with exit status 1
> > >
> > >
> > > Also (might be) worth noting from above is that I'm picking up *arrow
> > > 0.9.0-SNAPSHOT.*
> > >
> > > From what I can see in the */Users/simba/anaconda/envs/pyarrow-dev/lib*
> > > folder the sym link is infact pointing to *libparquet.1.3.2.dylib
> > *instead
> > > of the expected *libparquet.1.0.0.dylib*:
> > >
> > > > pwd/Users/simba/anaconda/envs/pyarrow-dev/lib> ll | grep
> > "libparquet"-rwxr-xr-x    1 simba  staff   1.6M Jan 11 18:45
> > libparquet.1.3.2.dylib
> > > lrwxr-xr-x    1 simba  staff    22B Jan 11 18:45 libparquet.1.dylib ->
> > > libparquet.1.3.2.dylib-rw-r--r--    1 simba  staff   3.0M Jan 11 18:45
> > > libparquet.a
> > > lrwxr-xr-x    1 simba  staff    18B Jan 11 18:45 libparquet.dylib ->
> > > libparquet.1.dylib
> > >
> > >
> > >
> > > Just to clarify also, I'm attempting to build the wheel from within
> > > *arrow/python* folder where the *setup.py* file is.
> > >
> > > Thanks again for the help.
> > >
> > > Simba
> > >
> > >
> > >
> > > On Thu, 11 Jan 2018 at 09:09 simba nyatsanga <simnyatsa...@gmail.com>
> > wrote:
> > >
> > > > Hi Wes,
> > > >
> > > > Thanks for the response. I was following the development instructions
> > on
> > > > Github here:
> > > >
> > https://github.com/apache/arrow/blob/master/python/doc/source/development.rst
> > > >
> > > > I took MacOS option and installed my virtual env via conda. I must've
> > > > missed an instruction when trying the 2.7 install, because I was able
> > to
> > > > successfully install for 3.6.
> > > >
> > > > Although it looks like the instructions on Github are similar to the
> > ones
> > > > you linked, I will give it another go with the later.
> > > >
> > > > Kind Regards
> > > > Simba
> > > >
> > > > On Thu, 11 Jan 2018 at 00:51 Wes McKinney <wesmck...@gmail.com> wrote:
> > > >
> > > >> hi Simba,
> > > >>
> > > >> Are you following development instructions in
> > > >>
> > > >>
> > http://arrow.apache.org/docs/python/development.html#developing-on-linux-and-macos
> > > >> or something else?
> > > >>
> > > >> - Wes
> > > >>
> > > >> On Wed, Jan 10, 2018 at 11:20 AM, simba nyatsanga
> > > >> <simnyatsa...@gmail.com> wrote:
> > > >> > Hi,
> > > >> >
> > > >> > I've created a python 2.7 virtualenv in my attempt to build the
> > pyarrow
> > > >> > project. But I'm having trouble running one of commands as
> > specified in
> > > >> the
> > > >> > development docs on Github, specifically this command:
> > > >> >
> > > >> > cd arrow/python
> > > >> > python setup.py build_ext --build-type=$ARROW_BUILD_TYPE \
> > > >> >        --with-parquet --with-plasma --inplace
> > > >> >
> > > >> > The error output looks like this:
> > > >> >
> > > >> > running build_ext-- Runnning cmake for pyarrow
> > > >> > cmake
> > > >>
> > -DPYTHON_EXECUTABLE=/Users/simba/anaconda/envs/pyarrow-dev-py2.7/bin/python
> > > >> >  -DPYARROW_BUILD_PARQUET=on -DPYARROW_BUILD_PLASMA=on
> > > >> > -DCMAKE_BUILD_TYPE= /Users/simba/Projects/personal/oss/arrow/python
> > > >> > INFOCompiler command:
> > /Library/Developer/CommandLineTools/usr/bin/c++
> > > >> > INFOCompiler version: Apple LLVM version 8.0.0
> > > >> > (clang-800.0.42.1)Target: x86_64-apple-darwin15.6.0
> > > >> > Thread model: posixInstalledDir:
> > > >> /Library/Developer/CommandLineTools/usr/bin
> > > >> >
> > > >> > INFOCompiler id: Clang
> > > >> > Selected compiler clang 3.8.0svn
> > > >> > Configured for DEBUG build (set with cmake
> > > >> > -DCMAKE_BUILD_TYPE={release,debug,...})-- Build Type: DEBUG-- Build
> > > >> > output directory:
> > > >> > /Users/simba/Projects/personal/oss/arrow/python/build/debug/--
> > > >> > Checking for module 'arrow'--   No package 'arrow' found-- Found the
> > > >> > Arrow core library:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libarrow.dylib--
> > > >> > Found the Arrow Python library:
> > > >> >
> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libarrow_python.dylib
> > > >> > Added shared library dependency arrow:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libarrow.dylib
> > > >> > Added shared library dependency arrow_python:
> > > >> >
> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libarrow_python.dylib--
> > > >> > Checking for module 'parquet'--   No package 'parquet' found-- Found
> > > >> > the Parquet library:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libparquet.dylib
> > > >> > Added shared library dependency parquet:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libparquet.dylib--
> > > >> > Checking for module 'plasma'--   No package 'plasma' found-- Found
> > the
> > > >> > Plasma core library:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libplasma.dylib--
> > > >> > Found Plasma executable:
> > > >> > Added shared library dependency libplasma:
> > > >> > /Users/simba/anaconda/envs/pyarrow-dev-py2.7/lib/libplasma.dylib--
> > > >> > Configuring done-- Generating done-- Build files have been written
> > to:
> > > >> > /Users/simba/Projects/personal/oss/arrow/python-- Finished cmake for
> > > >> > pyarrow-- Running cmake --build for pyarrow
> > > >> > makemake: *** No targets specified and no makefile found.
> > Stop.error:
> > > >> > command 'make' failed with exit status 2
> > > >> >
> > > >> >
> > > >> > It looks like there's a change dir happening at this line in the
> > > >> setup.py:
> > > >> > https://github.com/apache/arrow/blob/master/python/setup.py#L136
> > > >> > Which, in my case, is switching to the temp build which doesn't
> > have the
> > > >> > required Makefile to run the make command.
> > > >> >
> > > >> > I could be missing something because I was able to build the project
> > > >> > successfully for python3. But I'd like to build it in python2.7 to
> > > >> attempt
> > > >> > a bug fix for this issue:
> > > >> https://issues.apache.org/jira/browse/ARROW-1976
> > > >> >
> > > >> > Thanks for help.
> > > >> >
> > > >> > Kind Regards
> > > >> > Simba
> > > >>
> > > >
> >

Reply via email to