paleolimbot opened a new issue, #1222:
URL: https://github.com/apache/arrow-adbc/issues/1222

   I can't seem to build the tests for any driver anymore! On MacOS M1 I get:
   
   ```bash
   cd arrow-adbc/c
   mkdir build && cd build
   cmake .. -DADBC_BUILD_TESTS=ON -DADBC_DRIVER_SQLITE=ON
   cmake --build .
   ```
   
   ```
   [build] [100%] Linking CXX executable adbc-driver-sqlite-test
   [build] Undefined symbols for architecture arm64:
   [build]   "testing::Matcher<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&>::Matcher(std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char>> const&)", referenced 
from:
   [build]       testing::Matcher<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&> 
testing::internal::MatcherCastImpl<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, 
std::__1::allocator<char>>>::CastImpl<true>(std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char>> const&, 
std::__1::integral_constant<bool, true>, std::__1::integral_constant<bool, 
true>) in adbc_validation.cc.o
   [build] ld: symbol(s) not found for architecture arm64
   ```
   
   I do see that `adbc_validation` is referenced from the cmake but I'm not 
familiar with the custom CMake levels of indirection to know if there's a file 
missing. The complete output is:
   
   <details>
   
   ```
   deweydunnington@Deweys-MacBook-Air-2 c % mkdir build && cd build
   deweydunnington@Deweys-MacBook-Air-2 build % cmake .. -DADBC_BUILD_TESTS=ON 
-DADBC_DRIVER_SQLITE=ON
   -- The C compiler identification is AppleClang 14.0.3.14030022
   -- The CXX compiler identification is AppleClang 14.0.3.14030022
   -- Detecting C compiler ABI info
   -- Detecting C compiler ABI info - done
   -- Check for working C compiler: 
/Library/Developer/CommandLineTools/usr/bin/cc - skipped
   -- Detecting C compile features
   -- Detecting C compile features - done
   -- Detecting CXX compiler ABI info
   -- Detecting CXX compiler ABI info - done
   -- Check for working CXX compiler: 
/Library/Developer/CommandLineTools/usr/bin/c++ - skipped
   -- Detecting CXX compile features
   -- Detecting CXX compile features - done
   -- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT
   -- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT - Failed
   -- Found GTest: /opt/homebrew/lib/cmake/GTest/GTestConfig.cmake (found 
version "1.12.1")  
   -- Found SQLite3: 
/Library/Developer/CommandLineTools/SDKs/MacOSX13.3.sdk/usr/include (found 
version "3.39.5") 
   -- Looking for sys/types.h
   -- Looking for sys/types.h - found
   -- Looking for stdint.h
   -- Looking for stdint.h - found
   -- Looking for stddef.h
   -- Looking for stddef.h - found
   -- Check size of time_t
   -- Check size of time_t - done
   -- ---------------------------------------------------------------------
   -- ADBC version: 0.8.0-SNAPSHOT
   -- 
   -- Build configuration summary:
   --   CMake version: 3.24.1
   --   Generator: Unix Makefiles
   --   Build type: 
   --   Source directory: /Users/deweydunnington/Desktop/rscratch/arrow-adbc/c
   --   Install prefix: /usr/local
   -- 
   -- Compile and link options:
   -- 
   --   ADBC_BUILD_WARNING_LEVEL=CHECKIN [default=""]
   --       CHECKIN to enable Werror, PRODUCTION otherwise
   --   ADBC_CXXFLAGS="" [default=""]
   --       Compiler flags to append when compiling ADBC C++ libraries
   --   ADBC_GO_BUILD_TAGS="" [default=""]
   --       Build tags to append when compiling ADBC Go libraries
   --   ADBC_BUILD_STATIC=ON [default=ON]
   --       Build static libraries
   --   ADBC_BUILD_SHARED=ON [default=ON]
   --       Build shared libraries
   --   ADBC_PACKAGE_KIND="" [default=""]
   --       Arbitrary string that identifies the kind of package
   --       (for informational purposes)
   --   ADBC_GIT_ID=aafb99601825aaed054f0772f952cd14004a1c04 [default=""]
   --       The Arrow git commit id (if any)
   --   ADBC_GIT_DESCRIPTION="" [default=""]
   --       The Arrow git commit description (if any)
   --   ADBC_NO_DEPRECATED_API=OFF [default=OFF]
   --       Exclude deprecated APIs from build
   --   ADBC_USE_CCACHE=ON [default=ON]
   --       Use ccache when compiling (if available)
   --   ADBC_USE_PRECOMPILED_HEADERS=OFF [default=OFF]
   --       Use precompiled headers when compiling
   --   ADBC_ARMV8_ARCH=armv8-a [default=armv8-a|armv8-a+crc+crypto]
   --       Arm64 arch and extensions
   --   ADBC_ALTIVEC=ON [default=ON]
   --       Build with Altivec if compiler has support
   --   ADBC_RPATH_ORIGIN=OFF [default=OFF]
   --       Build Arrow libraries with RATH set to $ORIGIN
   --   ADBC_INSTALL_NAME_RPATH=ON [default=ON]
   --       Build Arrow libraries with install_name set to @rpath
   --   ADBC_GGDB_DEBUG=ON [default=ON]
   --       Pass -ggdb flag to debug builds
   -- 
   -- Test and benchmark options:
   -- 
   --   ADBC_BUILD_EXAMPLES=OFF [default=OFF]
   --       Build the Arrow examples
   --   ADBC_BUILD_TESTS=ON [default=OFF]
   --       Build the Arrow googletest unit tests
   --   ADBC_BUILD_INTEGRATION=OFF [default=OFF]
   --       Build the Arrow integration test executables
   --   ADBC_BUILD_BENCHMARKS=OFF [default=OFF]
   --       Build the Arrow micro benchmarks
   --   ADBC_TEST_LINKAGE=shared [default=shared|static]
   --       Linkage of Arrow libraries with unit tests executables.
   -- 
   -- Lint options:
   -- 
   --   ADBC_GENERATE_COVERAGE=OFF [default=OFF]
   --       Build with C++ code coverage enabled
   -- 
   -- Checks options:
   -- 
   --   ADBC_TEST_MEMCHECK=OFF [default=OFF]
   --       Run the test suite using valgrind --tool=memcheck
   --   ADBC_USE_ASAN=OFF [default=OFF]
   --       Enable Address Sanitizer checks
   --   ADBC_USE_TSAN=OFF [default=OFF]
   --       Enable Thread Sanitizer checks
   --   ADBC_USE_UBSAN=OFF [default=OFF]
   --       Enable Undefined Behavior sanitizer checks
   -- 
   -- Thirdparty toolchain options:
   -- 
   --   ADBC_DEPENDENCY_SOURCE=AUTO 
[default=AUTO|BUNDLED|SYSTEM|CONDA|VCPKG|BREW]
   --       Method to use for acquiring arrow's build dependencies
   -- 
   -- Advanced developer options:
   -- 
   -- 
   -- Project components options:
   -- 
   --   ADBC_DRIVER_FLIGHTSQL=OFF [default=OFF]
   --       Build the Flight SQL driver
   --   ADBC_DRIVER_MANAGER=OFF [default=OFF]
   --       Build the driver manager
   --   ADBC_DRIVER_POSTGRESQL=OFF [default=OFF]
   --       Build the PostgreSQL driver
   --   ADBC_DRIVER_SQLITE=ON [default=OFF]
   --       Build the SQLite driver
   --   ADBC_DRIVER_SNOWFLAKE=OFF [default=OFF]
   --       Build the Snowflake driver
   --   ADBC_INTEGRATION_DUCKDB=OFF [default=OFF]
   --       Build the test suite for DuckDB
   -- Configuring done
   -- Generating done
   -- Build files have been written to: 
/Users/deweydunnington/Desktop/rscratch/arrow-adbc/c/build
   deweydunnington@Deweys-MacBook-Air-2 build % cmake --build .
   [  6%] Building C object 
vendor/nanoarrow/CMakeFiles/nanoarrow.dir/nanoarrow.c.o
   [ 13%] Linking C static library libnanoarrow.a
   [ 13%] Built target nanoarrow
   [ 20%] Building C object 
driver/common/CMakeFiles/adbc_driver_common.dir/utils.c.o
   [ 26%] Linking C static library libadbc_driver_common.a
   [ 26%] Built target adbc_driver_common
   [ 33%] Building CXX object 
driver/common/CMakeFiles/adbc-driver-common-test.dir/utils_test.cc.o
   [ 40%] Linking CXX executable adbc-driver-common-test
   [ 40%] Built target adbc-driver-common-test
   [ 46%] Building CXX object 
validation/CMakeFiles/adbc_validation_util.dir/adbc_validation_util.cc.o
   [ 53%] Linking CXX static library libadbc_validation_util.a
   [ 53%] Built target adbc_validation_util
   [ 60%] Building CXX object 
validation/CMakeFiles/adbc_validation.dir/adbc_validation.cc.o
   [ 60%] Built target adbc_validation
   [ 66%] Building C object 
driver/sqlite/CMakeFiles/adbc_driver_sqlite_objlib.dir/sqlite.c.o
   [ 73%] Building C object 
driver/sqlite/CMakeFiles/adbc_driver_sqlite_objlib.dir/statement_reader.c.o
   [ 73%] Built target adbc_driver_sqlite_objlib
   [ 80%] Linking C shared library libadbc_driver_sqlite.dylib
   [ 80%] Built target adbc_driver_sqlite_shared
   [ 86%] Linking C static library libadbc_driver_sqlite.a
   [ 86%] Built target adbc_driver_sqlite_static
   [ 93%] Building CXX object 
driver/sqlite/CMakeFiles/adbc-driver-sqlite-test.dir/sqlite_test.cc.o
   [100%] Linking CXX executable adbc-driver-sqlite-test
   Undefined symbols for architecture arm64:
     "testing::Matcher<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&>::Matcher(std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char>> const&)", referenced 
from:
         testing::Matcher<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&> 
testing::internal::MatcherCastImpl<std::__1::basic_string_view<char, 
std::__1::char_traits<char>> const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, 
std::__1::allocator<char>>>::CastImpl<true>(std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char>> const&, 
std::__1::integral_constant<bool, true>, std::__1::integral_constant<bool, 
true>) in adbc_validation.cc.o
   ld: symbol(s) not found for architecture arm64
   clang: error: linker command failed with exit code 1 (use -v to see 
invocation)
   make[2]: *** [driver/sqlite/adbc-driver-sqlite-test] Error 1
   make[1]: *** [driver/sqlite/CMakeFiles/adbc-driver-sqlite-test.dir/all] 
Error 2
   make: *** [all] Error 2
   ```
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to