That being said, is there an easier way by using a Docker container I could use to build this in?
On Sat, 31 Aug 2019 at 12:44, Chris Teoh <chris.t...@gmail.com> wrote: > Hey there, > > Brand new to Arrow here. > > Trying to build it following the instructions and I get errors with the > ORC module building cpp > > In file included from > /Users/test/GitHub/arrow/cpp/build/orc_ep-prefix/src/orc_ep/c++/src/wrap/orc-proto-wrapper.cc:44: > > /Users/test/GitHub/arrow/cpp/build/orc_ep-prefix/src/orc_ep-build/c++/src/orc_proto.pb.cc:960:145: > error: possible misuse of comma operator here [-Werror,-Wcomma] > static bool dynamic_init_dummy_orc_5fproto_2eproto = ( > > ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_orc_5fproto_2eproto), > true); > > ^ > > /Users/test/GitHub/arrow/cpp/build/orc_ep-prefix/src/orc_ep-build/c++/src/orc_proto.pb.cc:960:57: > note: cast expression to void to silence warning > static bool dynamic_init_dummy_orc_5fproto_2eproto = ( > > ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_orc_5fproto_2eproto), > true); > > I can disable the ORC module and that part builds fine, build command is:- > > pushd arrow/cpp/build > > > > cmake -DPYTHON_EXECUTABLE=$VIRTUAL_ENV/bin/python > -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \ > > -DCMAKE_INSTALL_LIBDIR=lib \ > > -DARROW_FLIGHT=ON \ > > -DARROW_GANDIVA=ON \ > > -DARROW_ORC=OFF \ > > -DARROW_PARQUET=ON \ > > -DARROW_PYTHON=ON \ > > -DARROW_PLASMA=ON \ > > -DARROW_BUILD_TESTS=ON \ > > .. > > make -j4 > > make install > > popd > > then I try to build the python module:- > > pushd arrow/python > export PYARROW_WITH_FLIGHT=1 > export PYARROW_WITH_GANDIVA=1 > export PYARROW_WITH_ORC=0 > export PYARROW_WITH_PARQUET=1 > python setup.py build_ext --inplace > popd > > and get:- > running build_ext > creating build > creating build/temp.macosx-10.14-intel-2.7 > -- Running cmake for pyarrow > cmake -DPYTHON_EXECUTABLE=/Users/test/GitHub/pyarrow/bin/python > -DPYARROW_BUILD_FLIGHT=on -DPYARROW_BUILD_PARQUET=on > -DPYARROW_BOOST_USE_SHARED=on -DPYARROW_BUILD_GANDIVA=on > -DCMAKE_BUILD_TYPE=release /Users/test/GitHub/arrow/python > -- The C compiler identification is AppleClang 10.0.1.10010046 > -- The CXX compiler identification is AppleClang 10.0.1.10010046 > -- Check for working C compiler: > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc > -- Check for working C compiler: > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc > -- works > -- Detecting C compiler ABI info > -- Detecting C compiler ABI info - done > -- Detecting C compile features > -- Detecting C compile features - done > -- Check for working CXX compiler: > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ > -- Check for working CXX compiler: > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ > -- works > -- Detecting CXX compiler ABI info > -- Detecting CXX compiler ABI info - done > -- Detecting CXX compile features > -- Detecting CXX compile features - done > -- Compiler command: env LANG=C > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ > -v > -- Compiler version: Apple LLVM version 10.0.1 (clang-1001.0.46.4) > Target: x86_64-apple-darwin18.6.0 > Thread model: posix > InstalledDir: > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin > > -- Compiler id: Clang > Selected compiler clang 4.1.0svn > -- Performing Test CXX_SUPPORTS_SSE4_2 > -- Performing Test CXX_SUPPORTS_SSE4_2 - Success > -- Performing Test CXX_SUPPORTS_ALTIVEC > -- Performing Test CXX_SUPPORTS_ALTIVEC - Success > -- Performing Test CXX_SUPPORTS_ARMCRC > -- Performing Test CXX_SUPPORTS_ARMCRC - Failed > -- Performing Test CXX_SUPPORTS_ARMV8_CRC_CRYPTO > -- Performing Test CXX_SUPPORTS_ARMV8_CRC_CRYPTO - Failed > -- Arrow build warning level: PRODUCTION > Configured for RELEASE build (set with cmake > -DCMAKE_BUILD_TYPE={release,debug,...}) > -- Build Type: RELEASE > -- Build output directory: > /Users/test/GitHub/arrow/python/build/temp.macosx-10.14-intel-2.7/release > -- Found PythonInterp: /Users/test/GitHub/pyarrow/bin/python (found > version "2.7.10") > -- Found PythonLibs: > /System/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib > -- Found NumPy: version "1.16.5" > /Users/test/GitHub/pyarrow/lib/python2.7/site-packages/numpy/core/include > -- Found PkgConfig: /usr/local/bin/pkg-config (found version "0.29.2") > -- Found the Arrow core library: /Users/test/GitHub/dist/lib/libarrow.dylib > -- Found the Arrow Python library: > /Users/test/GitHub/dist/lib/libarrow_python.dylib > -- Added shared library dependency arrow_shared: > /Users/test/GitHub/dist/lib/libarrow.dylib > -- Added shared library dependency arrow_python_shared: > /Users/test/GitHub/dist/lib/libarrow_python.dylib > -- Checking for module 'parquet' > -- No package 'parquet' found > -- Could not find the parquet library. Looked in system search paths. > CMake Error at CMakeLists.txt:417 (message): > Unable to locate Parquet libraries > > > -- Configuring incomplete, errors occurred! > > My "dist" folder is as follows:- > dist > dist/bin > dist/bin/plasma-store-server > dist/include > dist/include/plasma > dist/include/plasma/client.h > dist/include/plasma/events.h > dist/include/plasma/common.h > dist/include/plasma/compat.h > dist/include/plasma/test_util.h > dist/include/arrow > dist/include/arrow/type.h > dist/include/arrow/memory_pool.h > dist/include/arrow/status.h > dist/include/arrow/visitor_inline.h > dist/include/arrow/util > dist/include/arrow/util/compression_zstd.h > dist/include/arrow/util/compiler_util.h > dist/include/arrow/util/bit_stream_utils.h > dist/include/arrow/util/range.h > dist/include/arrow/util/checked_cast.h > dist/include/arrow/util/config.h > dist/include/arrow/util/string_builder.h > dist/include/arrow/util/io_util.h > dist/include/arrow/util/uri.h > dist/include/arrow/util/task_group.h > dist/include/arrow/util/neon_util.h > dist/include/arrow/util/ubsan.h > dist/include/arrow/util/int_util.h > dist/include/arrow/util/atomic_shared_ptr.h > dist/include/arrow/util/bpacking.h > dist/include/arrow/util/sse_util.h > dist/include/arrow/util/decimal.h > dist/include/arrow/util/compression_brotli.h > dist/include/arrow/util/logging.h > dist/include/arrow/util/compression.h > dist/include/arrow/util/compression_zlib.h > dist/include/arrow/util/functional.h > dist/include/arrow/util/stl.h > dist/include/arrow/util/thread_pool.h > dist/include/arrow/util/key_value_metadata.h > dist/include/arrow/util/parsing.h > dist/include/arrow/util/macros.h > dist/include/arrow/util/stopwatch.h > dist/include/arrow/util/compression_bz2.h > dist/include/arrow/util/compression_snappy.h > dist/include/arrow/util/memory.h > dist/include/arrow/util/hashing.h > dist/include/arrow/util/cpu_info.h > dist/include/arrow/util/basic_decimal.h > dist/include/arrow/util/compression_lz4.h > dist/include/arrow/util/bit_util.h > dist/include/arrow/util/visibility.h > dist/include/arrow/util/type_traits.h > dist/include/arrow/util/parallel.h > dist/include/arrow/util/trie.h > dist/include/arrow/util/rle_encoding.h > dist/include/arrow/util/windows_compatibility.h > dist/include/arrow/util/iterator.h > dist/include/arrow/util/utf8.h > dist/include/arrow/util/string_view.h > dist/include/arrow/util/align_util.h > dist/include/arrow/util/string.h > dist/include/arrow/util/variant.h > dist/include/arrow/util/hash_util.h > dist/include/arrow/python > dist/include/arrow/python/inference.h > dist/include/arrow/python/pyarrow.h > dist/include/arrow/python/python_to_arrow.h > dist/include/arrow/python/flight.h > dist/include/arrow/python/numpy_interop.h > dist/include/arrow/python/config.h > dist/include/arrow/python/deserialize.h > dist/include/arrow/python/pyarrow_lib.h > dist/include/arrow/python/pyarrow_api.h > dist/include/arrow/python/decimal.h > dist/include/arrow/python/api.h > dist/include/arrow/python/numpy_to_arrow.h > dist/include/arrow/python/common.h > dist/include/arrow/python/io.h > dist/include/arrow/python/benchmark.h > dist/include/arrow/python/numpy_convert.h > dist/include/arrow/python/iterators.h > dist/include/arrow/python/visibility.h > dist/include/arrow/python/serialize.h > dist/include/arrow/python/type_traits.h > dist/include/arrow/python/init.h > dist/include/arrow/python/helpers.h > dist/include/arrow/python/platform.h > dist/include/arrow/python/extension_type.h > dist/include/arrow/python/arrow_to_pandas.h > dist/include/arrow/array > dist/include/arrow/array/builder_dict.h > dist/include/arrow/array/builder_adaptive.h > dist/include/arrow/array/builder_base.h > dist/include/arrow/array/builder_binary.h > dist/include/arrow/array/builder_union.h > dist/include/arrow/array/concatenate.h > dist/include/arrow/array/diff.h > dist/include/arrow/array/builder_nested.h > dist/include/arrow/array/builder_time.h > dist/include/arrow/array/builder_decimal.h > dist/include/arrow/array/builder_primitive.h > dist/include/arrow/type_fwd.h > dist/include/arrow/dataset > dist/include/arrow/dataset/file_base.h > dist/include/arrow/dataset/discovery.h > dist/include/arrow/dataset/disk_store.h > dist/include/arrow/dataset/type_fwd.h > dist/include/arrow/dataset/file_json.h > dist/include/arrow/dataset/api.h > dist/include/arrow/dataset/dataset.h > dist/include/arrow/dataset/file_csv.h > dist/include/arrow/dataset/scanner.h > dist/include/arrow/dataset/partition.h > dist/include/arrow/dataset/writer.h > dist/include/arrow/dataset/file_feather.h > dist/include/arrow/dataset/file_parquet.h > dist/include/arrow/dataset/visibility.h > dist/include/arrow/dataset/filter.h > dist/include/arrow/dataset/transaction.h > dist/include/arrow/dataset/test_util.h > dist/include/arrow/flight > dist/include/arrow/flight/client.h > dist/include/arrow/flight/types.h > dist/include/arrow/flight/api.h > dist/include/arrow/flight/server_auth.h > dist/include/arrow/flight/customize_protobuf.h > dist/include/arrow/flight/client_auth.h > dist/include/arrow/flight/visibility.h > dist/include/arrow/flight/server.h > dist/include/arrow/flight/platform.h > dist/include/arrow/flight/test_util.h > dist/include/arrow/io > dist/include/arrow/io/hdfs.h > dist/include/arrow/io/interfaces.h > dist/include/arrow/io/buffered.h > dist/include/arrow/io/test_common.h > dist/include/arrow/io/file.h > dist/include/arrow/io/mman.h > dist/include/arrow/io/api.h > dist/include/arrow/io/compressed.h > dist/include/arrow/io/memory.h > dist/include/arrow/io/readahead.h > dist/include/arrow/result.h > dist/include/arrow/memory_pool_test.h > dist/include/arrow/record_batch.h > dist/include/arrow/sparse_tensor.h > dist/include/arrow/filesystem > dist/include/arrow/filesystem/filesystem.h > dist/include/arrow/filesystem/mockfs.h > dist/include/arrow/filesystem/localfs.h > dist/include/arrow/filesystem/path_util.h > dist/include/arrow/filesystem/s3fs.h > dist/include/arrow/filesystem/test_util.h > dist/include/arrow/scalar.h > dist/include/arrow/visitor.h > dist/include/arrow/stl.h > dist/include/arrow/api.h > dist/include/arrow/testing > dist/include/arrow/testing/gtest_util.h > dist/include/arrow/testing/util.h > dist/include/arrow/testing/gtest_common.h > dist/include/arrow/testing/random.h > dist/include/arrow/buffer.h > dist/include/arrow/compare.h > dist/include/arrow/json > dist/include/arrow/json/reader.h > dist/include/arrow/json/test_common.h > dist/include/arrow/json/chunker.h > dist/include/arrow/json/parser.h > dist/include/arrow/json/converter.h > dist/include/arrow/json/options.h > dist/include/arrow/json/api.h > dist/include/arrow/json/rapidjson_defs.h > dist/include/arrow/json/chunked_builder.h > dist/include/arrow/buffer_builder.h > dist/include/arrow/compute > dist/include/arrow/compute/kernels > dist/include/arrow/compute/kernels/take.h > dist/include/arrow/compute/kernels/count.h > dist/include/arrow/compute/kernels/aggregate.h > dist/include/arrow/compute/kernels/boolean.h > dist/include/arrow/compute/kernels/sum.h > dist/include/arrow/compute/kernels/compare.h > dist/include/arrow/compute/kernels/cast.h > dist/include/arrow/compute/kernels/mean.h > dist/include/arrow/compute/kernels/isin.h > dist/include/arrow/compute/kernels/filter.h > dist/include/arrow/compute/kernels/sort_to_indices.h > dist/include/arrow/compute/kernels/hash.h > dist/include/arrow/compute/type_fwd.h > dist/include/arrow/compute/context.h > dist/include/arrow/compute/api.h > dist/include/arrow/compute/expression.h > dist/include/arrow/compute/kernel.h > dist/include/arrow/compute/benchmark_util.h > dist/include/arrow/compute/operation.h > dist/include/arrow/compute/logical_type.h > dist/include/arrow/compute/test_util.h > dist/include/arrow/allocator.h > dist/include/arrow/csv > dist/include/arrow/csv/reader.h > dist/include/arrow/csv/test_common.h > dist/include/arrow/csv/chunker.h > dist/include/arrow/csv/parser.h > dist/include/arrow/csv/converter.h > dist/include/arrow/csv/options.h > dist/include/arrow/csv/api.h > dist/include/arrow/csv/column_builder.h > dist/include/arrow/array.h > dist/include/arrow/builder.h > dist/include/arrow/vendored > dist/include/arrow/vendored/datetime > dist/include/arrow/vendored/datetime/tz_private.h > dist/include/arrow/vendored/datetime/ios.h > dist/include/arrow/vendored/datetime/date.h > dist/include/arrow/vendored/datetime/visibility.h > dist/include/arrow/vendored/datetime/tz.h > dist/include/arrow/vendored/datetime.h > dist/include/arrow/vendored/variant.hpp > dist/include/arrow/vendored/string_view.hpp > dist/include/arrow/table.h > dist/include/arrow/ipc > dist/include/arrow/ipc/feather.h > dist/include/arrow/ipc/reader.h > dist/include/arrow/ipc/test_common.h > dist/include/arrow/ipc/json_simple.h > dist/include/arrow/ipc/message.h > dist/include/arrow/ipc/options.h > dist/include/arrow/ipc/api.h > dist/include/arrow/ipc/dictionary.h > dist/include/arrow/ipc/util.h > dist/include/arrow/ipc/writer.h > dist/include/arrow/ipc/json_integration.h > dist/include/arrow/table_builder.h > dist/include/arrow/type_traits.h > dist/include/arrow/tensor.h > dist/include/arrow/pretty_print.h > dist/include/arrow/extension_type.h > dist/include/gandiva > dist/include/gandiva/engine.h > dist/include/gandiva/decimal_ir.h > dist/include/gandiva/simple_arena.h > dist/include/gandiva/lvalue.h > dist/include/gandiva/function_registry_math_ops.h > dist/include/gandiva/function_registry_string.h > dist/include/gandiva/condition.h > dist/include/gandiva/tree_expr_builder.h > dist/include/gandiva/function_registry_common.h > dist/include/gandiva/node_visitor.h > dist/include/gandiva/projector.h > dist/include/gandiva/lru_cache.h > dist/include/gandiva/expr_decomposer.h > dist/include/gandiva/gandiva_aliases.h > dist/include/gandiva/func_descriptor.h > dist/include/gandiva/llvm_types.h > dist/include/gandiva/literal_holder.h > dist/include/gandiva/selection_vector_impl.h > dist/include/gandiva/function_ir_builder.h > dist/include/gandiva/selection_vector.h > dist/include/gandiva/decimal_scalar.h > dist/include/gandiva/cache.h > dist/include/gandiva/expression_registry.h > dist/include/gandiva/configuration.h > dist/include/gandiva/node.h > dist/include/gandiva/field_descriptor.h > dist/include/gandiva/logging.h > dist/include/gandiva/dex.h > dist/include/gandiva/llvm_includes.h > dist/include/gandiva/function_registry_timestamp_arithmetic.h > dist/include/gandiva/basic_decimal_scalar.h > dist/include/gandiva/native_function.h > dist/include/gandiva/exported_funcs.h > dist/include/gandiva/function_registry_datetime.h > dist/include/gandiva/filter_cache_key.h > dist/include/gandiva/expression.h > dist/include/gandiva/function_holder_registry.h > dist/include/gandiva/function_registry_arithmetic.h > dist/include/gandiva/exported_funcs_registry.h > dist/include/gandiva/function_registry_hash.h > dist/include/gandiva/value_validity_pair.h > dist/include/gandiva/expr_validator.h > dist/include/gandiva/gdv_function_stubs.h > dist/include/gandiva/dex_visitor.h > dist/include/gandiva/annotator.h > dist/include/gandiva/local_bitmaps_holder.h > dist/include/gandiva/projector_cache_key.h > dist/include/gandiva/date_utils.h > dist/include/gandiva/decimal_type_util.h > dist/include/gandiva/function_signature.h > dist/include/gandiva/random_generator_holder.h > dist/include/gandiva/regex_util.h > dist/include/gandiva/bitmap_accumulator.h > dist/include/gandiva/visibility.h > dist/include/gandiva/to_date_holder.h > dist/include/gandiva/decimal_xlarge.h > dist/include/gandiva/filter.h > dist/include/gandiva/arrow.h > dist/include/gandiva/compiled_expr.h > dist/include/gandiva/llvm_generator.h > dist/include/gandiva/in_holder.h > dist/include/gandiva/execution_context.h > dist/include/gandiva/function_holder.h > dist/include/gandiva/eval_batch.h > dist/include/gandiva/function_registry.h > dist/include/gandiva/like_holder.h > dist/include/parquet > dist/include/parquet/printer.h > dist/include/parquet/column_writer.h > dist/include/parquet/murmur3.h > dist/include/parquet/bloom_filter.h > dist/include/parquet/file_reader.h > dist/include/parquet/thrift.h > dist/include/parquet/types.h > dist/include/parquet/arrow > dist/include/parquet/arrow/reader.h > dist/include/parquet/arrow/schema.h > dist/include/parquet/arrow/writer.h > dist/include/parquet/arrow/test_util.h > dist/include/parquet/encoding.h > dist/include/parquet/parquet_version.h > dist/include/parquet/schema.h > dist/include/parquet/metadata.h > dist/include/parquet/hasher.h > dist/include/parquet/file_writer.h > dist/include/parquet/statistics.h > dist/include/parquet/api > dist/include/parquet/api/reader.h > dist/include/parquet/api/schema.h > dist/include/parquet/api/io.h > dist/include/parquet/api/writer.h > dist/include/parquet/column_reader.h > dist/include/parquet/column_scanner.h > dist/include/parquet/deprecated_io.h > dist/include/parquet/exception.h > dist/include/parquet/column_page.h > dist/include/parquet/windows_compatibility.h > dist/include/parquet/platform.h > dist/include/parquet/test_util.h > dist/include/parquet/properties.h > dist/lib > dist/lib/libparquet.15.0.0.dylib > dist/lib/libarrow_flight_testing.a > dist/lib/libarrow_flight_testing.15.0.0.dylib > dist/lib/pkgconfig > dist/lib/pkgconfig/arrow-dataset.pc > dist/lib/pkgconfig/gandiva.pc > dist/lib/pkgconfig/parquet.pc > dist/lib/pkgconfig/arrow-python.pc > dist/lib/pkgconfig/arrow-compute.pc > dist/lib/pkgconfig/plasma.pc > dist/lib/pkgconfig/arrow.pc > dist/lib/pkgconfig/arrow-flight.pc > dist/lib/libarrow_flight_testing.dylib > dist/lib/cmake > dist/lib/cmake/arrow > dist/lib/cmake/arrow/arrowConfigVersion.cmake > dist/lib/cmake/arrow/arrowConfig.cmake > dist/lib/cmake/arrow/arrowTargets-release.cmake > dist/lib/cmake/arrow/arrowTargets.cmake > dist/lib/libarrow.15.0.0.dylib > dist/lib/libparquet.dylib > dist/lib/libgandiva.dylib > dist/lib/libparquet.a > dist/lib/libarrow_flight.dylib > dist/lib/libarrow_flight.a > dist/lib/libarrow_dataset.a > dist/lib/libarrow_python.15.dylib > dist/lib/libarrow_python.a > dist/lib/libarrow_dataset.15.0.0.dylib > dist/lib/libgandiva.15.0.0.dylib > dist/lib/libarrow_python.15.0.0.dylib > dist/lib/libgandiva.a > dist/lib/libarrow.dylib > dist/lib/libarrow.15.dylib > dist/lib/libparquet.15.dylib > dist/lib/libplasma.a > dist/lib/libarrow.a > dist/lib/libarrow_flight_testing.15.dylib > dist/lib/libarrow_testing.15.0.0.dylib > dist/lib/libplasma.dylib > dist/lib/libplasma.15.dylib > dist/lib/libplasma.15.0.0.dylib > dist/lib/libarrow_testing.dylib > dist/lib/libarrow_flight.15.dylib > dist/lib/libarrow_dataset.15.dylib > dist/lib/libarrow_python.dylib > dist/lib/libarrow_dataset.dylib > dist/lib/libgandiva.15.dylib > dist/lib/libarrow_testing.15.dylib > dist/lib/libarrow_flight.15.0.0.dylib > dist/lib/libarrow_testing.a > > My LD_LIBRARY_PATH:- > echo $LD_LIBRARY_PATH > /Users/test/GitHub/dist/lib > > Any help would be much appreciated. > > Kind Regards > Chris > > -- > Chris > -- Chris