conan-io / conan-center-index

Recipes for the ConanCenter repository
https://conan.io/center
MIT License
969 stars 1.78k forks source link

[package] arrow/* Unable to debug build arrow with parquet due to error with finding thrift library #25492

Open martin-blostein-innovasea opened 1 month ago

martin-blostein-innovasea commented 1 month ago

Describe the bug

Operating System+version: Windows 10 Pro (Build 19045.4894) Compiler+version: MSVC 193 (19.38.33135) Conan version: 2.8.0 Python version: 3.11.9

I am trying to install arrow with parquet on Windows. (I have no issues on Linux.) I have tried both arrow 12.0.1 and 17.0.0 (latest). Either way I get the following error:

arrow/17.0.0: ERROR: 
Package 'ca1874bbde647b293dbb46cfaf0598f9377a6c64' build failed
arrow/17.0.0: WARN: Build folder C:\Users\martin\.conan2\p\b\arrowe672c7aeb4b1f\b\build
ERROR: arrow/17.0.0: Error in build() method, line 414
        cmake.configure(build_script_folder=os.path.join(self.source_folder, "cpp"))
        ConanException: Error 1 while executing

with relevant traceback being:

CMake Error at C:/Users/martin/.conan2/p/cmake3081ce9d742b2/p/share/cmake-3.30/Modules/FindPackageHandleStandardArgs.cmake:233 (message):
  Could NOT find ThriftAlt (missing: ThriftAlt_LIB) (found suitable version
  "0.17.0", minimum required is "0.11.0")
Call Stack (most recent call first):
  C:/Users/martin/.conan2/p/cmake3081ce9d742b2/p/share/cmake-3.30/Modules/FindPackageHandleStandardArgs.cmake:603 (_FPHSA_FAILURE_MESSAGE)
  cmake_modules/FindThriftAlt.cmake:164 (find_package_handle_standard_args)
  cmake_modules/ThirdpartyToolchain.cmake:310 (find_package)
  cmake_modules/ThirdpartyToolchain.cmake:1780 (resolve_dependency)
  CMakeLists.txt:544 (include)

This is my conanfile.txt:

[requires]
arrow/17.0.0

[options]
arrow/*:parquet=True
arrow/*:with_boost=True
arrow/*:with_thrift=True

[generators]
CMakeDeps
CMakeToolchain

The same error occurs if I drop the parquet option and just have with_thrift.

This is my profile:

[settings]
arch=x86_64
compiler=msvc
compiler.cppstd=17
compiler.runtime=static
compiler.version=193
build_type=Debug
os=Windows

Here is the complete output:

$ conan install . --build=missing --profile:build conan_profile.txt --profile:host conan_profile.txt --settings=build_type=Debug

======== Input profiles ========
Profile host:
[settings]
arch=x86_64
build_type=Debug
compiler=msvc
compiler.cppstd=17
compiler.runtime=static
compiler.runtime_type=Debug
compiler.version=193
os=Windows

Profile build:
[settings]
arch=x86_64
build_type=Debug
compiler=msvc
compiler.cppstd=17
compiler.runtime=static
compiler.runtime_type=Debug
compiler.version=193
os=Windows

======== Computing dependency graph ========
Graph root
    conanfile.txt: C:\Users\martin\repos\arrow-repro\conanfile.txt
Requirements
    arrow/17.0.0#81be2aa6c49800df8cc163adf4b99e9f - Cache
    boost/1.85.0#8050df433bd49bb19811ef3e3cf1d0b7 - Cache
    bzip2/1.0.8#d00dac990f08d991998d624be81a9526 - Cache
    libevent/2.1.12#b6333a128075d75a3614bd8418bf2099 - Cache
    openssl/3.3.2#9f9f130d58e7c13e76bb8a559f0a6a8b - Cache
    thrift/0.17.0#582a577914f5c0e1ad47190499ff9b37 - Cache
    xsimd/9.0.1#c74b1d825f467a37c2a2f03c0b022daa - Cache
    zlib/1.2.11#fca992a7d96a1b92bd956caa8a97d18f - Cache
Build requirements
    b2/5.2.1#91bc73931a0acb655947a81569ed8b80 - Cache
    cmake/3.30.1#6d832cf2d46f6ec969ca5ed5b41f91eb - Cache
    nasm/2.16.01#d0aebbd20ccbb6ad9c9c753ab708098c - Cache
    strawberryperl/5.32.1.1#707032463aa0620fa17ec0d887f5fe41 - Cache
    winflexbison/2.5.25#6b08309e90720974e49b4cf745242e64 - Cache
Resolved version ranges
    b2/[>=5.2 <6]: b2/5.2.1
    cmake/[>=3.16 <4]: cmake/3.30.1
    openssl/[>=1.1 <4]: openssl/3.3.2
    zlib/[>=1.2.11 <2]: zlib/1.2.11

======== Computing necessary packages ========
arrow/17.0.0: Main binary package 'ca1874bbde647b293dbb46cfaf0598f9377a6c64' missing
arrow/17.0.0: Checking 2 compatible configurations
arrow/17.0.0: Compatible configurations not found in cache, checking servers
arrow/17.0.0: '7a6a322b533ae514f39ee027be25a75426faa227': compiler.cppstd=20
arrow/17.0.0: '52859a54c2b22e05e907cb5067390d319f39fb99': compiler.cppstd=23
Requirements
    arrow/17.0.0#81be2aa6c49800df8cc163adf4b99e9f:ca1874bbde647b293dbb46cfaf0598f9377a6c64 - Build
    boost/1.85.0#8050df433bd49bb19811ef3e3cf1d0b7:214d3618ada8f7d3a468d83307290fb609b607f3#e795ecd6ad387bff1c5d978800f4e877 - Cache
    bzip2/1.0.8#d00dac990f08d991998d624be81a9526:6ab4fdc3404e115db597c18b3f8984390f899537#2618a577ff43b4bc616498128de6c86e - Cache
    libevent/2.1.12#b6333a128075d75a3614bd8418bf2099:f0618648756dc2c85f5ba1dd87390c71fc2646de#3d03c0306337cc026070a0c3d0fd68a5 - Cache
    openssl/3.3.2#9f9f130d58e7c13e76bb8a559f0a6a8b:01ce596a0c6116475ddaf86922a7a6af890026e1#ffe9bbfb14c8418260c455e6f8600708 - Cache
    thrift/0.17.0#582a577914f5c0e1ad47190499ff9b37:f249ac5aa392c4797db393df7909242eed9bfbb2#8715168a1d4ec250d280beb04049f5a0 - Cache
    xsimd/9.0.1#c74b1d825f467a37c2a2f03c0b022daa:da39a3ee5e6b4b0d3255bfef95601890afd80709#7582132cb8d532d695e8c242308191f2 - Cache
    zlib/1.2.11#fca992a7d96a1b92bd956caa8a97d18f:92575f6a32b6028feef3228e83ae01692c8fbeef#2b9fc50e843fbf644d5536d4f1d0988d - Cache
Build requirements
    cmake/3.30.1#6d832cf2d46f6ec969ca5ed5b41f91eb:522dcea5982a3f8a5b624c16477e47195da2f84f#e4039405f7640830990126c02c0c9959 - Cache
Skipped binaries
    b2/5.2.1, nasm/2.16.01, strawberryperl/5.32.1.1, winflexbison/2.5.25

======== Installing packages ========
bzip2/1.0.8: Already installed! (1 of 9)
cmake/3.30.1: Already installed! (2 of 9)
cmake/3.30.1: Appending PATH environment variable: C:\Users\martin\.conan2\p\cmake3081ce9d742b2\p\bin
xsimd/9.0.1: Already installed! (3 of 9)
zlib/1.2.11: Already installed! (4 of 9)
boost/1.85.0: Already installed! (5 of 9)
boost/1.85.0: Disabled magic autolinking (smart and magic decisions)
openssl/3.3.2: Already installed! (6 of 9)
libevent/2.1.12: Already installed! (7 of 9)
thrift/0.17.0: Already installed! (8 of 9)
thrift/0.17.0: Appending PATH env var with : C:\Users\martin\.conan2\p\b\thrif936c5dd43d5ad\p\bin

-------- Installing package arrow/17.0.0 (9 of 9) --------
arrow/17.0.0: Building from source
arrow/17.0.0: Package arrow/17.0.0:ca1874bbde647b293dbb46cfaf0598f9377a6c64
arrow/17.0.0: Copying sources to build folder
arrow/17.0.0: Building your package in C:\Users\martin\.conan2\p\b\arrow1f528879a9395\b
arrow/17.0.0: Calling generate()
arrow/17.0.0: Generators folder: C:\Users\martin\.conan2\p\b\arrow1f528879a9395\b\build\generators
arrow/17.0.0: CMakeToolchain generated: conan_toolchain.cmake
arrow/17.0.0: CMakeToolchain generated: C:\Users\martin\.conan2\p\b\arrow1f528879a9395\b\build\generators\CMakePresets.json
arrow/17.0.0: Generating aggregated env files
arrow/17.0.0: Generated aggregated env files: ['conanbuild.bat', 'conanrun.bat']
arrow/17.0.0: Calling build()
arrow/17.0.0: apply_conandata_patches(): No patches defined in conandata
arrow/17.0.0: Running CMake.configure()
arrow/17.0.0: RUN: cmake -G "Visual Studio 17 2022" -DCMAKE_TOOLCHAIN_FILE="generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="C:/Users/martin/.conan2/p/b/arrow1f528879a9395/p" -DCMAKE_PROJECT_arrow_INCLUDE="C:\Users\martin\.conan2\p\b\arrow1f528879a9395\b\src\conan_cmake_project_include.cmake" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" "C:/Users/martin/.conan2/p/b/arrow1f528879a9395/b/src/cpp"
-- Building using CMake version: 3.30.1
-- Using Conan toolchain: C:/Users/martin/.conan2/p/b/arrow1f528879a9395/b/build/generators/conan_toolchain.cmake
-- Conan toolchain: CMAKE_GENERATOR_TOOLSET=v143
-- Conan toolchain: Setting CMAKE_MSVC_RUNTIME_LIBRARY=$<$<CONFIG:Debug>:MultiThreadedDebug>
-- Conan toolchain: C++ Standard 17 with extensions OFF
-- Conan toolchain: Setting BUILD_SHARED_LIBS = OFF
-- Selecting Windows SDK version 10.0.22621.0 to target Windows 10.0.19045.
-- The C compiler identification is MSVC 19.41.34120.0
-- The CXX compiler identification is MSVC 19.41.34120.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/BuildTools3/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/cl.exe - 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: C:/BuildTools3/VC/Tools/MSVC/14.41.34120/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Arrow version: 17.0.0 (full: '17.0.0')
-- Arrow SO version: 1700 (full: 1700.0.0)
-- clang-tidy 14 not found
-- clang-format 14 not found
-- Could NOT find ClangTools (missing: CLANG_FORMAT_BIN CLANG_TIDY_BIN)
-- infer not found
-- Found Python3: C:/Users/martin/repos/arrow-repro/venv/Scripts/python.exe (found version "3.11.9") found components: Interpreter
fatal: not a git repository (or any of the parent directories): .git
-- Using ccache: C:/Users/martin/AppData/Local/Programs/ccache/ccache.exe
-- Found cpplint executable at C:/Users/martin/.conan2/p/b/arrow1f528879a9395/b/src/cpp/build-support/cpplint.py
-- System processor: AMD64
-- Performing Test CXX_SUPPORTS_AVX2
-- Performing Test CXX_SUPPORTS_AVX2 - Success
-- Performing Test CXX_SUPPORTS_AVX512
-- Performing Test CXX_SUPPORTS_AVX512 - Success
-- Arrow build warning level: PRODUCTION
-- Build Type: RELEASE
-- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT
-- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT - Failed
-- Using SYSTEM approach to find dependencies
-- ARROW_ABSL_BUILD_VERSION: 20211102.0
-- ARROW_ABSL_BUILD_SHA256_CHECKSUM: dcf71b9cba8dc0ca9940c4b316a0c796be8fab42b070bb6b7cab62b48f0e66c4
-- ARROW_AWS_C_AUTH_BUILD_VERSION: v0.6.22
-- ARROW_AWS_C_AUTH_BUILD_SHA256_CHECKSUM: 691a6b4418afcd3dc141351b6ad33fccd8e3ff84df0e9e045b42295d284ee14c
-- ARROW_AWS_C_CAL_BUILD_VERSION: v0.5.20
-- ARROW_AWS_C_CAL_BUILD_SHA256_CHECKSUM: acc352359bd06f8597415c366cf4ec4f00d0b0da92d637039a73323dd55b6cd0
-- ARROW_AWS_C_COMMON_BUILD_VERSION: v0.8.9
-- ARROW_AWS_C_COMMON_BUILD_SHA256_CHECKSUM: 2f3fbaf7c38eae5a00e2a816d09b81177f93529ae8ba1b82dc8f31407565327a
-- ARROW_AWS_C_COMPRESSION_BUILD_VERSION: v0.2.16
-- ARROW_AWS_C_COMPRESSION_BUILD_SHA256_CHECKSUM: 044b1dbbca431a07bde8255ef9ec443c300fc60d4c9408d4b862f65e496687f4      
-- ARROW_AWS_C_EVENT_STREAM_BUILD_VERSION: v0.2.18
-- ARROW_AWS_C_EVENT_STREAM_BUILD_SHA256_CHECKSUM: 310ca617f713bf664e4c7485a3d42c1fb57813abd0107e49790d107def7cde4f     
-- ARROW_AWS_C_HTTP_BUILD_VERSION: v0.7.3
-- ARROW_AWS_C_HTTP_BUILD_SHA256_CHECKSUM: 07e16c6bf5eba6f0dea96b6f55eae312a7c95b736f4d2e4a210000f45d8265ae
-- ARROW_AWS_C_IO_BUILD_VERSION: v0.13.14
-- ARROW_AWS_C_IO_BUILD_SHA256_CHECKSUM: 12b66510c3d9a4f7e9b714e9cfab2a5bf835f8b9ce2f909d20ae2a2128608c71
-- ARROW_AWS_C_MQTT_BUILD_VERSION: v0.8.4
-- ARROW_AWS_C_MQTT_BUILD_SHA256_CHECKSUM: 232eeac63e72883d460c686a09b98cdd811d24579affac47c5c3f696f956773f
-- ARROW_AWS_C_S3_BUILD_VERSION: v0.2.3
-- ARROW_AWS_C_S3_BUILD_SHA256_CHECKSUM: a00b3c9f319cd1c9aa2c3fa15098864df94b066dcba0deaccbb3caa952d902fe
-- ARROW_AWS_C_SDKUTILS_BUILD_VERSION: v0.1.6
-- ARROW_AWS_C_SDKUTILS_BUILD_SHA256_CHECKSUM: 8a2951344b2fb541eab1e9ca17c18a7fcbfd2aaff4cdd31d362d1fad96111b91
-- ARROW_AWS_CHECKSUMS_BUILD_VERSION: v0.1.13
-- ARROW_AWS_CHECKSUMS_BUILD_SHA256_CHECKSUM: 0f897686f1963253c5069a0e495b85c31635ba146cd3ac38cc2ea31eaf54694d
-- ARROW_AWS_CRT_CPP_BUILD_VERSION: v0.18.16
-- ARROW_AWS_CRT_CPP_BUILD_SHA256_CHECKSUM: 9e69bc1dc4b50871d1038aa9ff6ddeb4c9b28f7d6b5e5b1b69041ccf50a13483
-- ARROW_AWS_LC_BUILD_VERSION: v1.3.0
-- ARROW_AWS_LC_BUILD_SHA256_CHECKSUM: ae96a3567161552744fc0cae8b4d68ed88b1ec0f3d3c98700070115356da5a37
-- ARROW_AWSSDK_BUILD_VERSION: 1.10.55
-- ARROW_AWSSDK_BUILD_SHA256_CHECKSUM: 2d552fb1a84bef4a9b65e34aa7031851ed2aef5319e02cc6e4cb735c48aa30de
-- ARROW_AZURE_SDK_BUILD_VERSION: azure-core_1.10.3
-- ARROW_AZURE_SDK_BUILD_SHA256_CHECKSUM: dd624c2f86adf474d2d0a23066be6e27af9cbd7e3f8d9d8fd7bf981e884b7b48
-- ARROW_BOOST_BUILD_VERSION: 1.81.0
-- ARROW_BOOST_BUILD_SHA256_CHECKSUM: 9e0ffae35528c35f90468997bc8d99500bf179cbae355415a89a600c38e13574
-- ARROW_BROTLI_BUILD_VERSION: v1.0.9
-- ARROW_BROTLI_BUILD_SHA256_CHECKSUM: f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46
-- ARROW_BZIP2_BUILD_VERSION: 1.0.8
-- ARROW_BZIP2_BUILD_SHA256_CHECKSUM: ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269
-- ARROW_CARES_BUILD_VERSION: 1.17.2
-- ARROW_CARES_BUILD_SHA256_CHECKSUM: 4803c844ce20ce510ef0eb83f8ea41fa24ecaae9d280c468c582d2bb25b3913d
-- ARROW_CRC32C_BUILD_VERSION: 1.1.2
-- ARROW_CRC32C_BUILD_SHA256_CHECKSUM: ac07840513072b7fcebda6e821068aa04889018f24e10e46181068fb214d7e56
-- ARROW_GBENCHMARK_BUILD_VERSION: v1.8.3
-- ARROW_GBENCHMARK_BUILD_SHA256_CHECKSUM: 6bc180a57d23d4d9515519f92b0c83d61b05b5bab188961f36ac7b06b0d9e9ce
-- ARROW_GFLAGS_BUILD_VERSION: v2.2.2
-- ARROW_GFLAGS_BUILD_SHA256_CHECKSUM: 34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf
-- ARROW_GLOG_BUILD_VERSION: v0.5.0
-- ARROW_GLOG_BUILD_SHA256_CHECKSUM: eede71f28371bf39aa69b45de23b329d37214016e2055269b3b5e7cfd40b59f5
-- ARROW_GOOGLE_CLOUD_CPP_BUILD_VERSION: v2.22.0
-- ARROW_GOOGLE_CLOUD_CPP_BUILD_SHA256_CHECKSUM: 0c68782e57959c82e0c81def805c01460a042c1aae0c2feee905acaa2a2dc9bf       
-- ARROW_GRPC_BUILD_VERSION: v1.46.3
-- ARROW_GRPC_BUILD_SHA256_CHECKSUM: d6cbf22cb5007af71b61c6be316a79397469c58c82a942552a62e708bce60964
-- ARROW_GTEST_BUILD_VERSION: 1.11.0
-- ARROW_GTEST_BUILD_SHA256_CHECKSUM: b4870bf121ff7795ba20d20bcdd8627b8e088f2d1dab299a031c1034eddc93d5
-- ARROW_JEMALLOC_BUILD_VERSION: 5.3.0
-- ARROW_JEMALLOC_BUILD_SHA256_CHECKSUM: 2db82d1e7119df3e71b7640219b6dfe84789bc0537983c3b7ac4f7189aecfeaa
-- ARROW_LZ4_BUILD_VERSION: v1.9.4
-- ARROW_LZ4_BUILD_SHA256_CHECKSUM: 0b0e3aa07c8c063ddf40b082bdf7e37a1562bda40a0ff5272957f3e987e0e54b
-- ARROW_MIMALLOC_BUILD_VERSION: v2.0.6
-- ARROW_MIMALLOC_BUILD_SHA256_CHECKSUM: 9f05c94cc2b017ed13698834ac2a3567b6339a8bde27640df5a1581d49d05ce5
-- ARROW_NLOHMANN_JSON_BUILD_VERSION: v3.10.5
-- ARROW_NLOHMANN_JSON_BUILD_SHA256_CHECKSUM: 5daca6ca216495edf89d167f808d1d03c4a4d929cef7da5e10f135ae1540c7e4
-- ARROW_OPENTELEMETRY_BUILD_VERSION: v1.13.0
-- ARROW_OPENTELEMETRY_BUILD_SHA256_CHECKSUM: 7735cc56507149686e6019e06f588317099d4522480be5f38a2a09ec69af1706
-- ARROW_OPENTELEMETRY_PROTO_BUILD_VERSION: v0.17.0
-- ARROW_OPENTELEMETRY_PROTO_BUILD_SHA256_CHECKSUM: f269fbcb30e17b03caa1decd231ce826e59d7651c0f71c3b28eb5140b4bb5412    
-- ARROW_ORC_BUILD_VERSION: 2.0.1
-- ARROW_ORC_BUILD_SHA256_CHECKSUM: 1ffac0228aa83f04a1b1cf2788a3af5953e82587ae3a77c41900e99f2557132d
-- ARROW_PROTOBUF_BUILD_VERSION: v21.3
-- ARROW_PROTOBUF_BUILD_SHA256_CHECKSUM: 2f723218f6cb709ae4cdc4fb5ed56a5951fc5d466f0128ce4c946b8c78c8c49f
-- ARROW_RAPIDJSON_BUILD_VERSION: 232389d4f1012dddec4ef84861face2d2ba85709
-- ARROW_RAPIDJSON_BUILD_SHA256_CHECKSUM: b9290a9a6d444c8e049bd589ab804e0ccf2b05dc5984a19ed5ae75d090064806
-- ARROW_RE2_BUILD_VERSION: 2022-06-01
-- ARROW_RE2_BUILD_SHA256_CHECKSUM: f89c61410a072e5cbcf8c27e3a778da7d6fd2f2b5b1445cd4f4508bee946ab0f
-- ARROW_SNAPPY_BUILD_VERSION: 1.1.10
-- ARROW_SNAPPY_BUILD_SHA256_CHECKSUM: 49d831bffcc5f3d01482340fe5af59852ca2fe76c3e05df0e67203ebbe0f1d90
-- ARROW_SUBSTRAIT_BUILD_VERSION: v0.44.0
-- ARROW_SUBSTRAIT_BUILD_SHA256_CHECKSUM: f989a862f694e7dbb695925ddb7c4ce06aa6c51aca945105c075139aed7e55a2
-- ARROW_S2N_TLS_BUILD_VERSION: v1.3.35
-- ARROW_S2N_TLS_BUILD_SHA256_CHECKSUM: 9d32b26e6bfcc058d98248bf8fc231537e347395dd89cf62bb432b55c5da990d
-- ARROW_THRIFT_BUILD_VERSION: 0.16.0
-- ARROW_THRIFT_BUILD_SHA256_CHECKSUM: f460b5c1ca30d8918ff95ea3eb6291b3951cf518553566088f3f2be8981f6209
-- ARROW_UCX_BUILD_VERSION: 1.12.1
-- ARROW_UCX_BUILD_SHA256_CHECKSUM: 9bef31aed0e28bf1973d28d74d9ac4f8926c43ca3b7010bd22a084e164e31b71
-- ARROW_UTF8PROC_BUILD_VERSION: v2.7.0
-- ARROW_UTF8PROC_BUILD_SHA256_CHECKSUM: 4bb121e297293c0fd55f08f83afab6d35d48f0af4ecc07523ad8ec99aa2b12a1
-- ARROW_XSIMD_BUILD_VERSION: 13.0.0
-- ARROW_XSIMD_BUILD_SHA256_CHECKSUM: 8bdbbad0c3e7afa38d88d0d484d70a1671a1d8aefff03f4223ab2eb6a41110a3
-- ARROW_ZLIB_BUILD_VERSION: 1.3.1
-- ARROW_ZLIB_BUILD_SHA256_CHECKSUM: 9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23
-- ARROW_ZSTD_BUILD_VERSION: 1.5.6
-- ARROW_ZSTD_BUILD_SHA256_CHECKSUM: 8c29e06cf42aacc1eafc4077ae2ec6c6fcb96a626157e0593d5e82a34fd403c1
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
-- Looking for _M_ARM64
-- Looking for _M_ARM64 - not found
-- Looking for __SIZEOF_INT128__
-- Looking for __SIZEOF_INT128__ - not found
-- Conan: Component target declared 'Boost::diagnostic_definitions'
-- Conan: Component target declared 'Boost::disable_autolinking'
-- Conan: Component target declared 'Boost::dynamic_linking'
-- Conan: Component target declared 'Boost::headers'
-- Conan: Component target declared 'Boost::boost'
-- Conan: Component target declared 'boost::_libboost'
-- Conan: Component target declared 'Boost::atomic'
-- Conan: Component target declared 'Boost::charconv'
-- Conan: Component target declared 'Boost::container'
-- Conan: Component target declared 'Boost::context'
-- Conan: Component target declared 'Boost::date_time'
-- Conan: Component target declared 'Boost::exception'
-- Conan: Component target declared 'Boost::math'
-- Conan: Component target declared 'Boost::program_options'
-- Conan: Component target declared 'Boost::regex'
-- Conan: Component target declared 'Boost::serialization'
-- Conan: Component target declared 'Boost::stacktrace'
-- Conan: Component target declared 'Boost::system'
-- Conan: Component target declared 'Boost::timer'
-- Conan: Component target declared 'Boost::chrono'
-- Conan: Component target declared 'Boost::coroutine'
-- Conan: Component target declared 'Boost::filesystem'
-- Conan: Component target declared 'Boost::json'
-- Conan: Component target declared 'Boost::math_c99'
-- Conan: Component target declared 'Boost::math_c99f'
-- Conan: Component target declared 'Boost::math_c99l'
-- Conan: Component target declared 'Boost::math_tr1'
-- Conan: Component target declared 'Boost::math_tr1f'
-- Conan: Component target declared 'Boost::math_tr1l'
-- Conan: Component target declared 'Boost::random'
-- Conan: Component target declared 'Boost::stacktrace_noop'
-- Conan: Component target declared 'Boost::stacktrace_windbg'
-- Conan: Component target declared 'Boost::stacktrace_windbg_cached'
-- Conan: Component target declared 'Boost::test'
-- Conan: Component target declared 'Boost::url'
-- Conan: Component target declared 'Boost::wserialization'
-- Conan: Component target declared 'Boost::graph'
-- Conan: Component target declared 'Boost::iostreams'
-- Conan: Component target declared 'Boost::nowide'
-- Conan: Component target declared 'Boost::prg_exec_monitor'
-- Conan: Component target declared 'Boost::test_exec_monitor'
-- Conan: Component target declared 'Boost::thread'
-- Conan: Component target declared 'Boost::wave'
-- Conan: Component target declared 'Boost::contract'
-- Conan: Component target declared 'Boost::locale'
-- Conan: Component target declared 'Boost::log'
-- Conan: Component target declared 'Boost::type_erasure'
-- Conan: Component target declared 'Boost::unit_test_framework'
-- Conan: Component target declared 'Boost::log_setup'
-- Conan: Target declared 'boost::boost'
-- Conan: Target declared 'ZLIB::ZLIB'
-- Conan: Target declared 'BZip2::BZip2'
-- Conan: Including build module from 'C:/Users/martin/.conan2/p/b/bzip2e024e47a56b3e/p/lib/cmake/conan-official-bzip2-variables.cmake'
-- Boost include dir: C:/Users/martin/.conan2/p/b/boost6ae987933b483/p/include
-- Building without OpenSSL support. Minimum OpenSSL version 1.0.2 required.
CMake Error at C:/Users/martin/.conan2/p/cmake3081ce9d742b2/p/share/cmake-3.30/Modules/FindPackageHandleStandardArgs.cmake:233 (message):
  Could NOT find ThriftAlt (missing: ThriftAlt_LIB) (found suitable version
  "0.17.0", minimum required is "0.11.0")
Call Stack (most recent call first):
  C:/Users/martin/.conan2/p/cmake3081ce9d742b2/p/share/cmake-3.30/Modules/FindPackageHandleStandardArgs.cmake:603 (_FPHSA_FAILURE_MESSAGE)
  cmake_modules/FindThriftAlt.cmake:164 (find_package_handle_standard_args)
  cmake_modules/ThirdpartyToolchain.cmake:310 (find_package)
  cmake_modules/ThirdpartyToolchain.cmake:1780 (resolve_dependency)
  CMakeLists.txt:544 (include)

-- Configuring incomplete, errors occurred!

arrow/17.0.0: ERROR: 
Package 'ca1874bbde647b293dbb46cfaf0598f9377a6c64' build failed
arrow/17.0.0: WARN: Build folder C:\Users\martin\.conan2\p\b\arrow1f528879a9395\b\build
ERROR: arrow/17.0.0: Error in build() method, line 414
        cmake.configure(build_script_folder=os.path.join(self.source_folder, "cpp"))
        ConanException: Error 1 while executing

How to reproduce it

Attempt to run conan install with the profile & conanfile above on Windows

martin-blostein-innovasea commented 1 month ago

An update: this is only an issue for me in the Debug build type. Release installs successfully.

martin-blostein-innovasea commented 1 month ago

I have narrowed this down to the following issue:

In the apache arrow source, there is a file FindThriftAlt.cmake. It contains this relevant block:

if(MSVC_TOOLCHAIN AND NOT DEFINED THRIFT_MSVC_LIB_SUFFIX)
  if(NOT ARROW_THRIFT_USE_SHARED)
    if(ARROW_USE_STATIC_CRT)
      if("${CMAKE_BUILD_TYPE}" STREQUAL "DEBUG")
        set(THRIFT_MSVC_LIB_SUFFIX "mtd")
      else()
        set(THRIFT_MSVC_LIB_SUFFIX "mt")
      endif()
    else()
      if("${CMAKE_BUILD_TYPE}" STREQUAL "DEBUG")
        set(THRIFT_MSVC_LIB_SUFFIX "mdd")
      else()
        set(THRIFT_MSVC_LIB_SUFFIX "md")
      endif()
    endif()
  endif()
endif()

The problem is that even with me setting build_type=Debug in both my profile and the settings argument on the command line, CMAKE_BUILD_TYPE here is set to RELEASE. This explains why the build succeeds with the release build type but not the debug build type.

By patching FindThriftAlt.cmake to force the usage of the debug suffixes, my debug build succeeds. I'm not yet sure about the proper fix.

According to the CMake docs, CMAKE_BUILD_TYPE "Specifies the build type on single-configuration generators". Visual Studio is of course multi-configuration, and so this value is left unset. The arrow project then sets this value to RELEASE by default. I am a newcomer to conan so I am not sure of how to work around this properly.