[
https://issues.apache.org/jira/browse/ARROW-7707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17026347#comment-17026347
]
Hossein R edited comment on ARROW-7707 at 1/30/20 12:57 AM:
------------------------------------------------------------
[~kou] Your suggestion wouldn't have worked because I didn't have the headers
and libraries installed systemwide.
It turns out it was a combination of multiple things:
1) I was building arrow with too many flags and external dependencies on.
2) I did not have the headers and libs in path for thrift and jemalloc that I
needed.
3) I did not need the shared libraries in the library build that resulted in
the linker doing weird things like not being able to statically link
everything. (./a.out required me to have libarrow.so.15 installed)
So how it worked was this:
1) I packed thrift+arrow+parquet+je_malloc static files and headers into my
path.
2) disabled all other unnecessary 3rd party deps
3) built with appropriate library flags
Here are the cmake and g++ commands for posterity:
cmake .. -DARROW_PARQUET:BOOL=ON -DPARQUET_BUILD_EXAMPLES:BOOL=ON
-DARROW_USE_GLOG:BOOL=OFF -DARROW_WITH_LZ4:BOOL=OFF -DARROW_WITH_ZLIB:BOOL=OFF
-DARROW_WITH_ZSTD:BOOL=OFF -DARROW_WITH_BROTLI:BOOL=OFF
-DARROW_FILESYSTEM:BOOL=OFF -DARROW_PROTOBUF_USE_SHARED:BOOL=OFF
-DARROW_GFLAGS_USE_SHARED:BOOL=OFF -DARROW_BOOST_USE_SHARED:BOOL=OFF
-DARROW_:BOOL=OFF -DARROW_DATASET:BOOL=OFF -DARROW_HDFS:BOOL=OFF
-DARROW_BUILD_UTILITIES:BOOL=OFF -DARROW_TEST_LINKAGE=static
-DARROW_NO_DEPRECATED_API:BOOL=ON -DARROW_BUILD_SHARED:BOOL=OFF
g++ -std=gnu++11 -I/home/hosanez/lib/include -L /home/hosanez/lib/lib main.cpp
-l:libarrow.a -l:libparquet.a -l:libarrow.a -l:libthrift.a -l:libjemalloc.a
-lpthread -lsnappy -ldouble-conversion -lboost_system -lboost_filesystem
was (Author: amoohossein):
[~kou] Your suggestion wouldn't have worked because I didn't have the headers
and libraries installed systemwide.
It turns out it was a combination of multiple things:
1) I was building arrow with too many flags and external dependencies on.
2) I did not have the headers and libs in path for thrift and jemalloc that I
needed.
3) I did not need the shared libraries in the library build that resulted in
the linker doing weird things like not being able to statically link
everything. (./a.out required me to have libarrow.so.15 installed)
So how it worked was this:
1) I packed thrift+arrow+parquet+je_malloc static files and headers into my
path.
2) disabled all other unnecessary 3rd party deps
3) built with appropriate library flags
Here are the cmake and g++ commands for posterity:
cmake .. -DARROW_PARQUET:BOOL=ON -DPARQUET_BUILD_EXAMPLES:BOOL=ON
-DARROW_USE_GLOG:BOOL=OFF -DARROW_WITH_LZ4:BOOL=OFF -DARROW_WITH_ZLIB:BOOL=OFF
-DARROW_WITH_ZSTD:BOOL=OFF -DARROW_WITH_BROTLI:BOOL=OFF
-DARROW_FILESYSTEM:BOOL=OFF -DARROW_PROTOBUF_USE_SHARED:BOOL=OFF
-DARROW_GFLAGS_USE_SHARED:BOOL=OFF -DARROW_BOOST_USE_SHARED:BOOL=OFF
-DARROW_:BOOL=OFF -DARROW_DATASET:BOOL=OFF -DARROW_HDFS:BOOL=OFF
-DARROW_BUILD_UTILITIES:BOOL=OFF -DARROW_TEST_LINKAGE=static
-DARROW_NO_DEPRECATED_API:BOOL=ON -DARROW_BUILD_SHARED:BOOL=OFF
++ -std=gnu++11 -I/home/hosanez/lib/include -L /home/hosanez/lib/lib main.cpp
-l:libarrow.a -l:libparquet.a -l:libarrow.a -l:libthrift.a -l:libjemalloc.a
-lpthread -lsnappy -ldouble-conversion -lboost_system -lboost_filesystem
> [C++] Build errors when using library that is built from source
> ---------------------------------------------------------------
>
> Key: ARROW-7707
> URL: https://issues.apache.org/jira/browse/ARROW-7707
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Affects Versions: 0.15.1
> Reporter: Hossein R
> Priority: Minor
>
> Hi there I built the library from source and now trying to write parquet
> files. Mainly using the example code, but I am getting link errors I cannot
> seem to be able to fix.
> This is how I build the library:
>
> {{ }}
> {{-> % cmake .. -DARROW_PARQUET:BOOL=ON -DPARQUET_BUILD_EXAMPLES:BOOL=ON }}
> {{-- Building using CMake version: 3.16.2-- The C compiler identification is
> GNU 5.4.0}}
> {{-- The CXX compiler identification is GNU 5.4.0-- Check for working C
> compiler: /usr/bin/cc}}
> {{-- Check for working C compiler: /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: /usr/bin/c++-- Check for working CXX
> compiler: /usr/bin/c++ -- works}}
> {{-- Detecting CXX compiler ABI info-- Detecting CXX compiler ABI info -
> done}}
> {{-- Detecting CXX compile features-- Detecting CXX compile features - done}}
> {{-- Arrow version: 0.15.1 (full: '0.15.1')-- Arrow SO version: 15 (full:
> 15.1.0)}}
> {{-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") --
> clang-tidy not found}}
> {{-- clang-format not found-- infer not found}}
> {{-- Found PythonInterp: /home/hosanez/env/bin/python (found version
> "2.7.12") }}
> {{-- Found cpplint executable at
> /home/hosanez/scratch/apache-arrow-0.15.1/cpp/build-support/cpplint.py}}
> {{-- Compiler command: env LANG=C /usr/bin/c++ -v}}
> {{-- Compiler version: Using built-in specs.}}
> {{COLLECT_GCC=/usr/bin/c++}}
> {{COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper}}
> {{Target: x86_64-linux-gnu}}
> {{Configured with: ../src/configure -v --with-pkgversion='Ubuntu
> 5.4.0-6ubuntu1~16.04.12'
> --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs
> --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
> --program-suffix=-5 --enable-shared --enable-linker-build-id
> --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
> --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu
> --enable-libstdcxx-debug --enable-libstdcxx-time=yes
> --with-default-libstdcxx-abi=new --enable-gnu-unique-object
> --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib
> --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo
> --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home
> --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64
> --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64
> --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
> --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686
> --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib
> --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
> --host=x86_64-linux-gnu --target=x86_64-linux-gnu}}
> {{Thread model: posix}}
> {{gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) }}
> {{-- Compiler id: GNU}}
> {{Selected compiler gcc 5.4.0-- Performing Test CXX_SUPPORTS_SSE4_2}}
> {{-- Performing Test CXX_SUPPORTS_SSE4_2 - Success-- Performing Test
> CXX_SUPPORTS_ALTIVEC}}
> {{-- Performing Test CXX_SUPPORTS_ALTIVEC - Failed-- 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}}
> {{Using ld linkerConfigured for RELEASE build (set with cmake
> -DCMAKE_BUILD_TYPE=\{release,debug,...})}}
> {{-- Build Type: RELEASE}}
> {{-- Using AUTO approach to find dependencies}}
> {{-- AWSSDK_VERSION: 1.7.160}}
> {{-- BOOST_VERSION: 1.67.0}}
> {{-- BROTLI_VERSION: v1.0.7}}
> {{-- BZIP2_VERSION: 1.0.8}}
> {{-- CARES_VERSION: 1.15.0}}
> {{-- DOUBLE_CONVERSION_VERSION: v3.1.5}}
> {{-- FLATBUFFERS_VERSION: v1.11.0}}
> {{-- GBENCHMARK_VERSION: v1.5.0}}
> {{-- GFLAGS_VERSION: v2.2.0}}
> {{-- GLOG_VERSION: v0.3.5}}
> {{-- GRPC_VERSION: v1.20.0}}
> {{-- GTEST_VERSION: 1.8.1}}
> {{-- JEMALLOC_VERSION: 5.2.1}}
> {{-- LZ4_VERSION: v1.8.3}}
> {{-- MIMALLOC_VERSION: 270e765454f98e8bab9d42609b153425f749fff6}}
> {{-- ORC_VERSION: 1.5.5}}
> {{-- PROTOBUF_VERSION: v3.7.1}}
> {{-- RAPIDJSON_VERSION: 2bbd33b33217ff4a73434ebf10cdac41e2ef5e34}}
> {{-- RE2_VERSION: 2019-08-01}}
> {{-- SNAPPY_VERSION: 1.1.7}}
> {{-- THRIFT_VERSION: 0.12.0}}
> {{-- THRIFT_MD5_CHECKSUM: 3deebbb4d1ca77dd9c9e009a1ea02183}}
> {{-- URIPARSER_VERSION: 0.9.3}}
> {{-- ZLIB_VERSION: 1.2.11}}
> {{-- ZSTD_VERSION: v1.4.3}}
> {{-- Looking for pthread.h}}
> {{-- Looking for pthread.h - found}}
> {{-- Performing Test CMAKE_HAVE_LIBC_PTHREAD}}
> {{-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed}}
> {{-- Check if compiler accepts -pthread}}
> {{-- Check if compiler accepts -pthread - yes}}
> {{-- Found Threads: TRUE }}
> {{-- Found Boost: /usr/local/include (found suitable version "1.60.0",
> minimum required is "1.58") found components: regex system filesystem }}
> {{-- Boost include dir: /usr/local/include}}
> {{-- Boost libraries:
> /usr/lib/x86_64-linux-gnu/libboost_regex.so/usr/lib/x86_64-linux-gnu/libboost_system.so/usr/lib/x86_64-linux-gnu/libboost_filesystem.so}}
> {{-- Found DoubleConversion:
> /usr/lib/x86_64-linux-gnu/libdouble-conversion.so }}
> {{-- Performing Test DOUBLE_CONVERSION_HAS_CASE_INSENSIBILITY}}
> {{-- Performing Test DOUBLE_CONVERSION_HAS_CASE_INSENSIBILITY - Failed}}
> {{-- Checking for modules 'libbrotlicommon;libbrotlienc;libbrotlidec'}}
> {{-- No package 'libbrotlicommon' found}}
> {{-- No package 'libbrotlienc' found}}
> {{-- No package 'libbrotlidec' found}}
> {{-- Could NOT find Brotli (missing: BROTLI_COMMON_LIBRARY BROTLI_ENC_LIBRARY
> BROTLI_DEC_LIBRARY BROTLI_INCLUDE_DIR) }}
> {{-- Building brotli from source}}
> {{-- Building with OpenSSL (Version: 1.0.2g) support}}
> {{-- Checking for module 'libglog'}}
> {{-- No package 'libglog' found}}
> {{-- Could NOT find GLOG (missing: GLOG_INCLUDE_DIR GLOG_LIB) }}
> {{-- Building glog from source}}
> {{-- Found gflagsAlt: /usr/lib/x86_64-linux-gnu/libgflags.so }}
> {{-- Checking for module 'thrift'}}
> {{-- No package 'thrift' found}}
> {{-- Could NOT find Thrift (missing: THRIFT_STATIC_LIB THRIFT_INCLUDE_DIR
> THRIFT_COMPILER) }}
> {{Building Apache Thrift from source}}
> {{Downloading Apache Thrift from
> http://apache-mirror.8birdsvideo.com//thrift/0.12.0/thrift-0.12.0.tar.gz}}
> {{-- Building (vendored) jemalloc from source}}
> {{-- Could NOT find RapidJSONAlt (missing: RAPIDJSON_INCLUDE_DIR) (found
> suitable version "2bbd33b33217ff4a73434ebf10cdac41e2ef5e34", minimum required
> is "1.1.0")}}
> {{-- Building rapidjson from source}}
> {{-- Could NOT find FlatbuffersAlt (missing: FLATBUFFERS_LIB
> FLATBUFFERS_INCLUDE_DIR FLATC) }}
> {{-- Building flatbuffers from source}}
> {{-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.8") }}
> {{-- Checking for module 'liblz4'}}
> {{-- No package 'liblz4' found}}
> {{-- Could NOT find Lz4 (missing: LZ4_LIB LZ4_INCLUDE_DIR) }}
> {{-- Building lz4 from source}}
> {{-- Checking for module 'libzstd'}}
> {{-- No package 'libzstd' found}}
> {{-- Could NOT find ZSTD (missing: ZSTD_LIB ZSTD_INCLUDE_DIR) }}
> {{-- Building zstd from source}}
> {{-- Found hdfs.h at:
> /home/hosanez/scratch/apache-arrow-0.15.1/cpp/thirdparty/hadoop/include/hdfs.h}}
> {{-- CMAKE_C_FLAGS: -O3 -DNDEBUG -Wall -Wno-attributes -msse4.2}}
> {{-- CMAKE_CXX_FLAGS: -fdiagnostics-color=always -O3 -DNDEBUG -Wall
> -Wno-attributes -msse4.2 }}
> {{-- flatc:
> /home/hosanez/scratch/apache-arrow-0.15.1/cpp/release/flatbuffers_ep-prefix/src/flatbuffers_ep-install/bin/flatc}}
> {{-- Looking for backtrace}}
> {{-- Looking for backtrace - found}}
> {{-- backtrace facility detected in default set of libraries}}
> {{-- Found Backtrace: /usr/include }}
> {{-- ---------------------------------------------------------------------}}
> {{-- Arrow version: 0.15.1}}
> {{-- }}
> {{-- Build configuration summary:}}
> {{-- Generator: Unix Makefiles}}
> {{-- Build type: RELEASE}}
> {{-- Source directory: /home/hosanez/scratch/apache-arrow-0.15.1/cpp}}
> {{-- Install prefix: /usr/local}}
> {{-- }}
> {{-- Compile and link options:}}
> {{-- Compiler flags to append when compiling Arrow "" [default]
> [ARROW_CXXFLAGS]}}
> {{-- Build static libraries ON [default] [ARROW_BUILD_STATIC]}}
> {{-- Build shared libraries ON [default] [ARROW_BUILD_SHARED]}}
> {{-- Exclude deprecated APIs from build OFF [default]
> [ARROW_NO_DEPRECATED_API]}}
> {{-- Use ccache when compiling (if available) ON [default]
> [ARROW_USE_CCACHE]}}
> {{-- Use ld.gold for linking on Linux (if available) OFF [default]
> [ARROW_USE_LD_GOLD]}}
> {{-- Build with SIMD optimizations ON [default] [ARROW_USE_SIMD]}}
> {{-- Build with SSE4.2 if compiler has support ON [default] [ARROW_SSE42]}}
> {{-- Build with Altivec if compiler has support ON [default] [ARROW_ALTIVEC]}}
> {{-- Build Arrow libraries with RATH set to $ORIGIN OFF [default]
> [ARROW_RPATH_ORIGIN]}}
> {{-- Build Arrow libraries with install_name set to @rpath ON [default]
> [ARROW_INSTALL_NAME_RPATH]}}
> {{-- Pass -ggdb flag to debug builds ON [default] [ARROW_GGDB_DEBUG]}}
> {{-- }}
> {{-- Test and benchmark options:}}
> {{-- Build the Arrow examples OFF [default] [ARROW_BUILD_EXAMPLES]}}
> {{-- Build the Arrow googletest unit tests OFF [default] [ARROW_BUILD_TESTS]}}
> {{-- Build the Arrow integration test executables OFF [default]
> [ARROW_BUILD_INTEGRATION]}}
> {{-- Build the Arrow micro benchmarks OFF [default] [ARROW_BUILD_BENCHMARKS]}}
> {{-- Build the Arrow micro reference benchmarks OFF [default]
> [ARROW_BUILD_BENCHMARKS_REFERENCE]}}
> {{-- Linkage of Arrow libraries with unit tests executables. "shared"
> [default] [ARROW_TEST_LINKAGE] [shared|static]}}
> {{-- Build Arrow Fuzzing executables OFF [default] [ARROW_FUZZING]}}
> {{-- Enable unit tests which use large memory OFF [default]
> [ARROW_LARGE_MEMORY_TESTS]}}
> {{-- }}
> {{-- Lint options:}}
> {{-- Only define the lint and check-format targets OFF [default]
> [ARROW_ONLY_LINT]}}
> {{-- If off, 'quiet' flags will be passed to linting tools OFF [default]
> [ARROW_VERBOSE_LINT]}}
> {{-- Build with C++ code coverage enabled OFF [default]
> [ARROW_GENERATE_COVERAGE]}}
> {{-- }}
> {{-- Checks options:}}
> {{-- Run the test suite using valgrind --tool=memcheck OFF [default]
> [ARROW_TEST_MEMCHECK]}}
> {{-- Enable Address Sanitizer checks OFF [default] [ARROW_USE_ASAN]}}
> {{-- Enable Thread Sanitizer checks OFF [default] [ARROW_USE_TSAN]}}
> {{-- Enable Undefined Behavior sanitizer checks OFF [default]
> [ARROW_USE_UBSAN]}}
> {{-- }}
> {{-- Project component options:}}
> {{-- Build Arrow commandline utilities ON [default] [ARROW_BUILD_UTILITIES]}}
> {{-- Build the Arrow Compute Modules ON [default] [ARROW_COMPUTE]}}
> {{-- Build the Arrow CUDA extensions (requires CUDA toolkit) OFF [default]
> [ARROW_CUDA]}}
> {{-- Build the Arrow Dataset Modules ON [default] [ARROW_DATASET]}}
> {{-- Build the Arrow Filesystem Layer ON [default] [ARROW_FILESYSTEM]}}
> {{-- Build the Arrow Flight RPC System (requires GRPC, Protocol Buffers) OFF
> [default] [ARROW_FLIGHT]}}
> {{-- Build the Gandiva libraries OFF [default] [ARROW_GANDIVA]}}
> {{-- Build the Arrow HDFS bridge ON [default] [ARROW_HDFS]}}
> {{-- Build the HiveServer2 client and Arrow adapter OFF [default]
> [ARROW_HIVESERVER2]}}
> {{-- Build the Arrow IPC extensions ON [default] [ARROW_IPC]}}
> {{-- Build the Arrow jemalloc-based allocator ON [default] [ARROW_JEMALLOC]}}
> {{-- Build the Arrow JNI lib OFF [default] [ARROW_JNI]}}
> {{-- Build Arrow with JSON support (requires RapidJSON) ON [default]
> [ARROW_JSON]}}
> {{-- Build the Arrow mimalloc-based allocator OFF [default] [ARROW_MIMALLOC]}}
> {{-- Build the Parquet libraries ON [ARROW_PARQUET]}}
> {{-- Build the Arrow ORC adapter OFF [default] [ARROW_ORC]}}
> {{-- Build the plasma object store along with Arrow OFF [default]
> [ARROW_PLASMA]}}
> {{-- Build the plasma object store java client OFF [default]
> [ARROW_PLASMA_JAVA_CLIENT]}}
> {{-- Build the Arrow CPython extensions OFF [default] [ARROW_PYTHON]}}
> {{-- Build Arrow with S3 support (requires the AWS SDK for C++) OFF [default]
> [ARROW_S3]}}
> {{-- Build Arrow with TensorFlow support enabled OFF [default]
> [ARROW_TENSORFLOW]}}
> {{-- }}
> {{-- Thirdparty toolchain options:}}
> {{-- Method to use for acquiring arrow's build dependencies "AUTO" [default]
> [ARROW_DEPENDENCY_SOURCE] [AUTO|BUNDLED|SYSTEM|CONDA|BREW]}}
> {{-- Show output from ExternalProjects rather than just logging to files OFF
> [default] [ARROW_VERBOSE_THIRDPARTY_BUILD]}}
> {{-- Rely on boost shared libraries where relevant ON [default]
> [ARROW_BOOST_USE_SHARED]}}
> {{-- Use vendored Boost instead of existing Boost. Note that this requires
> linking Boost statically. Deprecated. Use BOOST_SOURCE=BUNDLED instead. }}
> {{ OFF [default] [ARROW_BOOST_VENDORED]}}
> {{-- Rely on Protocol Buffers shared libraries where relevant ON [default]
> [ARROW_PROTOBUF_USE_SHARED]}}
> {{-- Rely on GFlags shared libraries where relevant ON [default]
> [ARROW_GFLAGS_USE_SHARED]}}
> {{-- Build with backtrace support ON [default] [ARROW_WITH_BACKTRACE]}}
> {{-- Build libraries with glog support for pluggable logging ON [default]
> [ARROW_USE_GLOG]}}
> {{-- Build with Brotli compression ON [default] [ARROW_WITH_BROTLI]}}
> {{-- Build with BZ2 compression OFF [default] [ARROW_WITH_BZ2]}}
> {{-- Build with lz4 compression ON [default] [ARROW_WITH_LZ4]}}
> {{-- Build with Snappy compression ON [default] [ARROW_WITH_SNAPPY]}}
> {{-- Build with zlib compression ON [default] [ARROW_WITH_ZLIB]}}
> {{-- Build with zstd compression ON [default] [ARROW_WITH_ZSTD]}}
> {{-- }}
> {{-- Parquet options:}}
> {{-- Depend only on Thirdparty headers to build libparquet. Always OFF if
> building binaries }}
> {{ OFF [default] [PARQUET_MINIMAL_DEPENDENCY]}}
> {{-- Build the Parquet executable CLI tools. Requires static libraries to be
> built. }}
> {{ OFF [default] [PARQUET_BUILD_EXECUTABLES]}}
> {{-- Build the Parquet examples. Requires static libraries to be built. ON
> [PARQUET_BUILD_EXAMPLES]}}
> {{-- Build support for encryption. Fail if OpenSSL is not found OFF [default]
> [PARQUET_REQUIRE_ENCRYPTION]}}
> {{-- }}
> {{-- Gandiva options:}}
> {{-- Build the Gandiva JNI wrappers OFF [default] [ARROW_GANDIVA_JAVA]}}
> {{-- Include -static-libstdc++ -static-libgcc when linking with Gandiva
> static libraries }}
> {{ OFF [default] [ARROW_GANDIVA_STATIC_LIBSTDCPP]}}
> {{-- Compiler flags to append when pre-compiling Gandiva operations ""
> [default] [ARROW_GANDIVA_PC_CXX_FLAGS]}}
> {{-- }}
> {{-- Advanced developer options:}}
> {{-- Compile with extra error context (line numbers, code) OFF [default]
> [ARROW_EXTRA_ERROR_CONTEXT]}}
> {{-- If enabled install ONLY targets that have already been built. Please be
> advised that if this is enabled 'install' will fail silently on components
> that have not been built }}
> {{ OFF [default] [ARROW_OPTIONAL_INSTALL]}}
> {{-- Outputting build configuration summary to
> /home/hosanez/scratch/apache-arrow-0.15.1/cpp/release/cmake_summary.json}}
> {{-- Configuring done}}
> {{-- Generating done}}
> {{-- Build files have been written to:
> /home/hosanez/scratch/apache-arrow-0.15.1/cpp/release}}
>
>
> *{{Here is the code I am trying to build:}}*
>
> #include <arrow/table.h>
> #include <arrow/type_traits.h>
> #include <arrow/array/builder_binary.h>
> #include <arrow/array/builder_primitive.h>
> #include <parquet/exception.h>
>
>
>
> std::shared_ptr<arrow::Table> generate_table() {
> arrow::Int64Builder i64builder;
> PARQUET_THROW_NOT_OK(i64builder.AppendValues(\{1, 2, 3, 4, 5}));
> std::shared_ptr<arrow::Array> i64array;
> PARQUET_THROW_NOT_OK(i64builder.Finish(&i64array));
>
> arrow::StringBuilder strbuilder;
> PARQUET_THROW_NOT_OK(strbuilder.Append("some"));
> PARQUET_THROW_NOT_OK(strbuilder.Append("string"));
> PARQUET_THROW_NOT_OK(strbuilder.Append("content"));
> PARQUET_THROW_NOT_OK(strbuilder.Append("in"));
> PARQUET_THROW_NOT_OK(strbuilder.Append("rows"));
> std::shared_ptr<arrow::Array> strarray;
> PARQUET_THROW_NOT_OK(strbuilder.Finish(&strarray));
>
> std::shared_ptr<arrow::Schema> schema = arrow::schema(
> \{arrow::field("int", arrow::int64()), arrow::field("str", arrow::utf8())});
>
> return arrow::Table::Make(schema, \{i64array, strarray});
> }
>
> int main(int argc, char** argv){
> std::shared_ptr<arrow::Table> table = generate_table();
> }
>
>
> *Here is the build command and output. Please note that I have installed it
> to a custom location and don't have any other conflicting installations.*
> {{$ g++ -std=gnu++11 -I /home/hosanez/lib/include -L
> /home/hosanez/lib/lib/libarrow.so -L -larrow main.cpp}}
> {{/tmp/ccWYIDP3.o: In function `generate_table()':}}
> {{main.cpp:(.text+0x1cd): undefined reference to
> `arrow::default_memory_pool()'}}
> {{main.cpp:(.text+0x2cd): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0x3a7): undefined reference to
> `arrow::ArrayBuilder::Finish(std::shared_ptr<arrow::Array>*)'}}
> {{main.cpp:(.text+0x3fc): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0x53f): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0x673): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0x7a7): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0x8db): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{/tmp/ccWYIDP3.o:main.cpp:(.text+0xa0f): more undefined references to
> `arrow::Status::ToString[abi:cxx11]() const' follow}}
> {{/tmp/ccWYIDP3.o: In function `generate_table()':}}
> {{main.cpp:(.text+0xae9): undefined reference to
> `arrow::ArrayBuilder::Finish(std::shared_ptr<arrow::Array>*)'}}
> {{main.cpp:(.text+0xb3e): undefined reference to
> `arrow::Status::ToString[abi:cxx11]() const'}}
> {{main.cpp:(.text+0xc19): undefined reference to `arrow::int64()'}}
> {{main.cpp:(.text+0xc6f): undefined reference to
> `arrow::field(std::__cxx11::basic_string<char, std::char_traits<char>,
> std::allocator<char> > const&, std::shared_ptr<arrow::DataType> const&, bool,
> std::shared_ptr<arrow::KeyValueMetadata const> const&)'}}
> {{main.cpp:(.text+0xc92): undefined reference to `arrow::utf8()'}}
> {{main.cpp:(.text+0xce8): undefined reference to
> `arrow::field(std::__cxx11::basic_string<char, std::char_traits<char>,
> std::allocator<char> > const&, std::shared_ptr<arrow::DataType> const&, bool,
> std::shared_ptr<arrow::KeyValueMetadata const> const&)'}}
> {{main.cpp:(.text+0xd52): undefined reference to
> `arrow::schema(std::vector<std::shared_ptr<arrow::Field>,
> std::allocator<std::shared_ptr<arrow::Field> > >&&,
> std::shared_ptr<arrow::KeyValueMetadata const> const&)'}}
> {{main.cpp:(.text+0xec0): undefined reference to
> `arrow::Table::Make(std::shared_ptr<arrow::Schema> const&,
> std::vector<std::shared_ptr<arrow::Array>,
> std::allocator<std::shared_ptr<arrow::Array> > > const&, long)'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Buffer::ZeroPadding()':}}
> {{main.cpp:(.text._ZN5arrow6Buffer11ZeroPaddingEv[_ZN5arrow6Buffer11ZeroPaddingEv]+0x14):
> undefined reference to `arrow::Buffer::CheckMutable() const'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Buffer::mutable_data()':}}
> {{main.cpp:(.text._ZN5arrow6Buffer12mutable_dataEv[_ZN5arrow6Buffer12mutable_dataEv]+0x14):
> undefined reference to `arrow::Buffer::CheckMutable() const'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::TypeTraits<arrow::Int64Type>::type_singleton()':}}
> {{main.cpp:(.text._ZN5arrow10TypeTraitsINS_9Int64TypeEE14type_singletonEv[_ZN5arrow10TypeTraitsINS_9Int64TypeEE14type_singletonEv]+0x23):
> undefined reference to `arrow::int64()'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::BufferBuilder::Resize(long, bool)':}}
> {{main.cpp:(.text._ZN5arrow13BufferBuilder6ResizeElb[_ZN5arrow13BufferBuilder6ResizeElb]+0x6e):
> undefined reference to `arrow::AllocateResizableBuffer(arrow::MemoryPool*,
> long, std::shared_ptr<arrow::ResizableBuffer>*)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::BufferBuilder::Finish(std::shared_ptr<arrow::Buffer>*, bool)':}}
> {{main.cpp:(.text._ZN5arrow13BufferBuilder6FinishEPSt10shared_ptrINS_6BufferEEb[_ZN5arrow13BufferBuilder6FinishEPSt10shared_ptrINS_6BufferEEb]+0xfb):
> undefined reference to `arrow::AllocateBuffer(arrow::MemoryPool*, long,
> std::shared_ptr<arrow::Buffer>*)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::ArrayBuilder::ArrayBuilder(arrow::MemoryPool*)':}}
> {{main.cpp:(.text._ZN5arrow12ArrayBuilderC2EPNS_10MemoryPoolE[_ZN5arrow12ArrayBuilderC5EPNS_10MemoryPoolE]+0x11):
> undefined reference to `vtable for arrow::ArrayBuilder'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::ArrayBuilder::UnsafeAppendToBitmap(unsigned char const*, long)':}}
> {{main.cpp:(.text._ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapEPKhl[_ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapEPKhl]+0x2a):
> undefined reference to `arrow::ArrayBuilder::UnsafeSetNotNull(long)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::ArrayBuilder::UnsafeAppendToBitmap(long, bool)':}}
> {{main.cpp:(.text._ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapElb[_ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapElb]+0x2a):
> undefined reference to `arrow::ArrayBuilder::UnsafeSetNotNull(long)'}}
> {{main.cpp:(.text._ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapElb[_ZN5arrow12ArrayBuilder20UnsafeAppendToBitmapElb]+0x3f):
> undefined reference to `arrow::ArrayBuilder::UnsafeSetNull(long)'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::BinaryBuilder::type() const':}}
> {{main.cpp:(.text._ZNK5arrow13BinaryBuilder4typeEv[_ZNK5arrow13BinaryBuilder4typeEv]+0x27):
> undefined reference to `arrow::binary()'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::StringBuilder::type() const':}}
> {{main.cpp:(.text._ZNK5arrow13StringBuilder4typeEv[_ZNK5arrow13StringBuilder4typeEv]+0x27):
> undefined reference to `arrow::utf8()'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::ArrayBuilder::~ArrayBuilder()':}}
> {{main.cpp:(.text._ZN5arrow12ArrayBuilderD2Ev[_ZN5arrow12ArrayBuilderD5Ev]+0xd):
> undefined reference to `vtable for arrow::ArrayBuilder'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::BinaryBuilder::BinaryBuilder()':}}
> {{main.cpp:(.text._ZN5arrow13BinaryBuilderC2Ev[_ZN5arrow13BinaryBuilderC5Ev]+0xd):
> undefined reference to `arrow::default_memory_pool()'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Status arrow::Status::Invalid<char
> const (&) [33]>(char const (&) [33])':}}
> {{main.cpp:(.text._ZN5arrow6Status7InvalidIJRA33_KcEEES0_DpOT_[_ZN5arrow6Status7InvalidIJRA33_KcEEES0_DpOT_]+0x4f):
> undefined reference to `arrow::Status::Status(arrow::StatusCode,
> std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> > const&)'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Status arrow::Status::Invalid<char
> const (&) [23]>(char const (&) [23])':}}
> {{main.cpp:(.text._ZN5arrow6Status7InvalidIJRA23_KcEEES0_DpOT_[_ZN5arrow6Status7InvalidIJRA23_KcEEES0_DpOT_]+0x4f):
> undefined reference to `arrow::Status::Status(arrow::StatusCode,
> std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> > const&)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::NumericBuilder<arrow::Int64Type>::NumericBuilder<arrow::Int64Type>(std::enable_if<arrow::TypeTraits<arrow::Int64Type>::is_parameter_free,
> arrow::MemoryPool*>::type)':}}
> {{main.cpp:(.text._ZN5arrow14NumericBuilderINS_9Int64TypeEEC2IS1_EENSt9enable_ifIXsrNS_10TypeTraitsIT_EE17is_parameter_freeEPNS_10MemoryPoolEE4typeE[_ZN5arrow14NumericBuilderINS_9Int64TypeEEC5IS1_EENSt9enable_ifIXsrNS_10TypeTraitsIT_EE17is_parameter_freeEPNS_10MemoryPoolEE4typeE]+0x50):
> undefined reference to `arrow::default_memory_pool()'}}
> {{/tmp/ccWYIDP3.o: In function `std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >
> arrow::util::StringBuilder<char const (&) [33]>(char const (&) [33])':}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x28):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x61):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::str[abi:cxx11]()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x6e):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA33_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x93):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{/tmp/ccWYIDP3.o: In function `std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >
> arrow::util::StringBuilder<char const (&) [23]>(char const (&) [23])':}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x28):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x61):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::str[abi:cxx11]()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x6e):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA23_KcEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x93):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Status
> arrow::Status::CapacityError<char const (&) [32], long, char const (&) [14],
> long&>(char const (&) [32], long&&, char const (&) [14], long&)':}}
> {{main.cpp:(.text._ZN5arrow6Status13CapacityErrorIJRA32_KclRA14_S2_RlEEES0_DpOT_[_ZN5arrow6Status13CapacityErrorIJRA32_KclRA14_S2_RlEEES0_DpOT_]+0x92):
> undefined reference to `arrow::Status::Status(arrow::StatusCode,
> std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> > const&)'}}
> {{/tmp/ccWYIDP3.o: In function `std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >
> arrow::util::StringBuilder<char const (&) [32], long, char const (&) [14],
> long&>(char const (&) [32], long&&, char const (&) [14], long&)':}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x3a):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xa9):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::str[abi:cxx11]()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xb6):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA32_KclRA14_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xdb):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{/tmp/ccWYIDP3.o:(.rodata._ZTIN5arrow14NumericBuilderINS_9Int64TypeEEE[_ZTIN5arrow14NumericBuilderINS_9Int64TypeEEE]+0x10):
> undefined reference to `typeinfo for arrow::ArrayBuilder'}}
> {{/tmp/ccWYIDP3.o:(.rodata._ZTIN5arrow17BaseBinaryBuilderINS_10BinaryTypeEEE[_ZTIN5arrow17BaseBinaryBuilderINS_10BinaryTypeEEE]+0x10):
> undefined reference to `typeinfo for arrow::ArrayBuilder'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::NumericBuilder<arrow::Int64Type>::Resize(long)':}}
> {{main.cpp:(.text._ZN5arrow14NumericBuilderINS_9Int64TypeEE6ResizeEl[_ZN5arrow14NumericBuilderINS_9Int64TypeEE6ResizeEl]+0x128):
> undefined reference to `arrow::ArrayBuilder::Resize(long)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::NumericBuilder<arrow::Int64Type>::AppendNulls(long)':}}
> {{main.cpp:(.text._ZN5arrow14NumericBuilderINS_9Int64TypeEE11AppendNullsEl[_ZN5arrow14NumericBuilderINS_9Int64TypeEE11AppendNullsEl]+0xb6):
> undefined reference to `arrow::ArrayBuilder::UnsafeSetNull(long)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::NumericBuilder<arrow::Int64Type>::FinishInternal(std::shared_ptr<arrow::ArrayData>*)':}}
> {{main.cpp:(.text._ZN5arrow14NumericBuilderINS_9Int64TypeEE14FinishInternalEPSt10shared_ptrINS_9ArrayDataEE[_ZN5arrow14NumericBuilderINS_9Int64TypeEE14FinishInternalEPSt10shared_ptrINS_9ArrayDataEE]+0x226):
> undefined reference to
> `arrow::ArrayData::Make(std::shared_ptr<arrow::DataType> const&, long,
> std::vector<std::shared_ptr<arrow::Buffer>,
> std::allocator<std::shared_ptr<arrow::Buffer> > >&&, long, long)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::BaseBinaryBuilder<arrow::BinaryType>::Resize(long)':}}
> {{main.cpp:(.text._ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE6ResizeEl[_ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE6ResizeEl]+0x159):
> undefined reference to `arrow::ArrayBuilder::Resize(long)'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::BaseBinaryBuilder<arrow::BinaryType>::Reset()':}}
> {{main.cpp:(.text._ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE5ResetEv[_ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE5ResetEv]+0x14):
> undefined reference to `arrow::ArrayBuilder::Reset()'}}
> {{/tmp/ccWYIDP3.o: In function
> `arrow::BaseBinaryBuilder<arrow::BinaryType>::FinishInternal(std::shared_ptr<arrow::ArrayData>*)':}}
> {{main.cpp:(.text._ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE14FinishInternalEPSt10shared_ptrINS_9ArrayDataEE[_ZN5arrow17BaseBinaryBuilderINS_10BinaryTypeEE14FinishInternalEPSt10shared_ptrINS_9ArrayDataEE]+0x33d):
> undefined reference to
> `arrow::ArrayData::Make(std::shared_ptr<arrow::DataType> const&, long,
> std::vector<std::shared_ptr<arrow::Buffer>,
> std::allocator<std::shared_ptr<arrow::Buffer> > >&&, long, long)'}}
> {{/tmp/ccWYIDP3.o: In function `arrow::Status
> arrow::Status::CapacityError<char const (&) [50], long, char const (&) [22],
> long&>(char const (&) [50], long&&, char const (&) [22], long&)':}}
> {{main.cpp:(.text._ZN5arrow6Status13CapacityErrorIJRA50_KclRA22_S2_RlEEES0_DpOT_[_ZN5arrow6Status13CapacityErrorIJRA50_KclRA22_S2_RlEEES0_DpOT_]+0x92):
> undefined reference to `arrow::Status::Status(arrow::StatusCode,
> std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>
> > const&)'}}
> {{/tmp/ccWYIDP3.o: In function `std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >
> arrow::util::StringBuilder<char const (&) [50], long, char const (&) [22],
> long&>(char const (&) [50], long&&, char const (&) [22], long&)':}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0x3a):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xa9):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::str[abi:cxx11]()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xb6):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{main.cpp:(.text._ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_[_ZN5arrow4util13StringBuilderIJRA50_KclRA22_S2_RlEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT_]+0xdb):
> undefined reference to
> `arrow::util::detail::StringStreamWrapper::~StringStreamWrapper()'}}
> {{collect2: error: ld returned 1 exit status}}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)