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