Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[package] opentelemetry-cpp/1.14.2: Fails to cross compile with option "with_otlp_http=True" because of protoc syntax error #25995

Open
unusedcode opened this issue Nov 21, 2024 · 4 comments
Assignees
Labels
bug Something isn't working

Comments

@unusedcode
Copy link

Description

Cross compiling opentelemetry-cpp/1.14.2 with host=armv8 and build=x86_64 fails because of a protoc syntax error (Syntax error: word unexpected (expecting ")")).

The protoc executable that is used to generate code during the build process has armv8 as architecture which doesn't match the build architecture. Directly calling the protoc executable leads to this error cannot execute binary file: Exec format error

The package builds successfully when it is not cross compiled and the build profile is used for both build and host.

Package and Environment Details

  • Package Name/Version: opentelemetry-cpp/1.14.2
  • Operating System+version: Linux Ubuntu 22.04.2 LTS
  • Compiler+version: GCC10
  • Docker image: none (built locally in wsl2)
  • Conan version: conan 1.65
  • Python version: Python 3.10.6

Conan profile

profile_host:
[settings]
arch=armv8
build_type=Debug
compiler=gcc
compiler.cppstd=gnu20
compiler.libcxx=libstdc++17
compiler.version=10
os=Linux
[options]
[build_requires]
[env]
CC=aarch64-linux-gnu-gcc-10
CXX=aarch64-linux-gnu-g++-10
LD=aarch64-linux-gnu-ld

profile_build:
[settings]
arch=x86_64
build_type=Debug
compiler=gcc
compiler.cppstd=gnu20
compiler.libcxx=libstdc++17
compiler.version=10
os=Linux
[options]
[build_requires]
[env]
CC=gcc-10
CXX=g++-10
LD=ld

Steps to reproduce

conan install --install-folder /workspace/build/ --profile:host /home/username/.conan/profiles/profile_host --profile:build /home/username/.conan/profiles/profile_build --build missing --update -s:h build_type=Debug -s:b build_type=Debug /workspace/

Logs

Click to expand log
-- Runing Conan install...
-- conan install --install-folder /workspace/build/ --profile:host /home/username/.conan/profiles/profile_host --profile:build /home/username/.conan/profiles/profile_build --build missing --update -s:h build_type=Debug -s:b build_type=Debug /workspace/

WARN: **************************************************
WARN: *** Conan 1 is legacy and on a deprecation path **
WARN: *********** Please upgrade to Conan 2 ************
WARN: **************************************************
Configuration (profile_host):
[settings]
arch=armv8
build_type=Debug
compiler=gcc
compiler.cppstd=gnu20
compiler.libcxx=libstdc++17
compiler.version=10
os=Linux
[options]
[build_requires]
[env]
CC=aarch64-linux-gnu-gcc-10
CXX=aarch64-linux-gnu-g++-10
LD=aarch64-linux-gnu-ld
cc=aarch64-linux-gnu-gcc-10
[conf]

Configuration (profile_build):
[settings]
arch=x86_64
build_type=Debug
compiler=gcc
compiler.cppstd=gnu20
compiler.libcxx=libstdc++17
compiler.version=10
os=Linux
[options]
[build_requires]
[env]
CC=gcc-10
CXX=g++-10
LD=ld
cc=gcc-10
WARN: opentelemetry-cpp/1.14.2: requirement libcurl/[>=7.78.0 <9] overridden by project/None to libcurl/8.8.0 
WARN: libcurl/8.8.0: requirement openssl/[>=1.1 <4] overridden by opentelemetry-cpp/1.14.2 to openssl/3.3.2 
abseil/20240116.2: WARN: Can't update, no package in remote
openssl/3.3.2: WARN: Can't update, no package in remote
protobuf/5.27.0: WARN: Can't update, no package in remote
libcurl/8.8.0: WARN: Can't update, no package in remote
opentelemetry-cpp/1.14.2: WARN: Package binary is corrupted, removing: 89ad4135a60f1e47117c8b2d595789cad000f235
abseil/20240116.2: WARN: Can't update, no package in remote
protobuf/5.27.0: WARN: Can't update, no package in remote
Version ranges solved
    abseil/* versions found in 'conancenter' remote
    Version range '>=20240116.1 <20240117.0' required by 'opentelemetry-cpp/1.14.2' resolved to 'abseil/20240116.2' in remote 'conancenter'
    openssl/* versions found in 'conancenter' remote
    Version range '>=1.1 <4' required by 'opentelemetry-cpp/1.14.2' resolved to 'openssl/3.3.2' in remote 'conancenter'
    zlib/* versions found in 'conancenter' remote
    Version range '>=1.2.11 <2' required by 'protobuf/5.27.0' resolved to 'zlib/1.3.1' in remote 'conancenter'
    Version range '>=1.2.11 <2' required by 'openssl/3.3.2' resolved to 'zlib/1.3.1' in remote 'conancenter'
    Version range '>=1.1 <4' required by 'libcurl/8.8.0' valid for downstream requirement 'openssl/3.3.2'
    Version range '>=1.2.11 <2' required by 'libcurl/8.8.0' resolved to 'zlib/1.3.1' in remote 'conancenter'
    Version range '>=1.2.11 <2' required by 'protobuf/5.27.0' resolved to 'zlib/1.3.1' in remote 'conancenter'

conanfile.py (project/None): Installing package
Requirements
    abseil/20240116.2 from 'conancenter' - Cache
    libcurl/8.8.0 from 'conancenter' - Cache
    nlohmann_json/3.11.3 from 'conancenter' - Cache
    openssl/3.3.2 from 'conancenter' - Cache
    opentelemetry-cpp/1.14.2 from 'conancenter' - Cache
    protobuf/5.27.0 from 'conancenter' - Cache
    zlib/1.3.1 from 'conancenter' - Cache
Packages
    abseil/20240116.2:039460df6724ac695179ed28b60866dbdf3ded1d - Cache
    libcurl/8.8.0:49cd52b8664dac6b1ad3ee982482c37b0a6e1a86 - Cache
    nlohmann_json/3.11.3:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    openssl/3.3.2:073deb8d612d032f04457d1b5d9d809d587e076a - Cache
    opentelemetry-cpp/1.14.2:89ad4135a60f1e47117c8b2d595789cad000f235 - Build
    protobuf/5.27.0:b274746a29bc168991595e6f603647d70f1836c4 - Cache
    zlib/1.3.1:63c6ab4a246f60fa0d3bec92f5b005ead2ada9af - Cache
Build requirements
    abseil/20240116.2 from 'conancenter' - Cache
    opentelemetry-proto/1.3.0 from 'conancenter' - Cache
    protobuf/5.27.0 from 'conancenter' - Cache
    zlib/1.3.1 from 'conancenter' - Cache
Build requirements packages
    abseil/20240116.2:82adbb2f1a95b1e3796fcc88de96ec0e3b5ad5b7 - Cache
    opentelemetry-proto/1.3.0:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    protobuf/5.27.0:961d03dd381fe08d2474198957e94726a9a75d81 - Cache
    zlib/1.3.1:75e99b627c196b65c439728670655ec3c366b334 - Cache

Cross-build from 'Linux:x86_64' to 'Linux:armv8'
Installing (downloading, building) binaries...
abseil/20240116.2: Already installed!
abseil/20240116.2: Already installed!
nlohmann_json/3.11.3: Already installed!
opentelemetry-proto/1.3.0: Already installed!
zlib/1.3.1: Already installed!
zlib/1.3.1: Already installed!
openssl/3.3.2: Already installed!
protobuf/5.27.0: Already installed!
protobuf/5.27.0: Already installed!
libcurl/8.8.0: Already installed!
opentelemetry-cpp/1.14.2: Applying build-requirement: opentelemetry-proto/1.3.0
opentelemetry-cpp/1.14.2: Applying build-requirement: protobuf/5.27.0
opentelemetry-cpp/1.14.2: Applying build-requirement: zlib/1.3.1
opentelemetry-cpp/1.14.2: Applying build-requirement: abseil/20240116.2
opentelemetry-cpp/1.14.2: WARN: Build folder is dirty, removing it: /home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235
opentelemetry-cpp/1.14.2: Copying sources to build folder
opentelemetry-cpp/1.14.2: Building your package in /home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235
opentelemetry-cpp/1.14.2: Generator txt created conanbuildinfo.txt
opentelemetry-cpp/1.14.2: Calling generate()
opentelemetry-cpp/1.14.2: Preset 'debug' added to CMakePresets.json. Invoke it manually using 'cmake --preset debug'
opentelemetry-cpp/1.14.2: If your CMake version is not compatible with CMakePresets (<3.19) call cmake like: 'cmake <path> -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug/generators/conan_toolchain.cmake -DBUILD_TESTING=OFF -DBUILD_BENCHMARK=OFF -DWITH_EXAMPLES=OFF -DWITH_NO_DEPRECATED_CODE=OFF -DWITH_STL=OFF -DWITH_GSL=OFF -DWITH_ABSEIL=ON -DWITH_OTLP_GRPC=OFF -DWITH_OTLP_HTTP=ON -DOTELCPP_PROTO_PATH=/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res -DWITH_ZIPKIN=OFF -DWITH_PROMETHEUS=OFF -DWITH_ELASTICSEARCH=OFF -DWITH_ZPAGES=OFF -DWITH_JAEGER=OFF -DWITH_NO_GETENV=OFF -DWITH_ASYNC_EXPORT_PREVIEW=OFF -DWITH_METRICS_EXEMPLAR_PREVIEW=OFF -DOPENTELEMETRY_INSTALL=ON -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_BUILD_TYPE=Debug'
opentelemetry-cpp/1.14.2: Aggregating env generators
opentelemetry-cpp/1.14.2: Calling build()
opentelemetry-cpp/1.14.2: CMake command: cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/package/89ad4135a60f1e47117c8b2d595789cad000f235" -DBUILD_TESTING="OFF" -DBUILD_BENCHMARK="OFF" -DWITH_EXAMPLES="OFF" -DWITH_NO_DEPRECATED_CODE="OFF" -DWITH_STL="OFF" -DWITH_GSL="OFF" -DWITH_ABSEIL="ON" -DWITH_OTLP_GRPC="OFF" -DWITH_OTLP_HTTP="ON" -DOTELCPP_PROTO_PATH="/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res" -DWITH_ZIPKIN="OFF" -DWITH_PROMETHEUS="OFF" -DWITH_ELASTICSEARCH="OFF" -DWITH_ZPAGES="OFF" -DWITH_JAEGER="OFF" -DWITH_NO_GETENV="OFF" -DWITH_ASYNC_EXPORT_PREVIEW="OFF" -DWITH_METRICS_EXEMPLAR_PREVIEW="OFF" -DOPENTELEMETRY_INSTALL="ON" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Debug" "/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/src"
-- Using Conan toolchain: /home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug/generators/conan_toolchain.cmake
-- Conan toolchain: Setting CMAKE_POSITION_INDEPENDENT_CODE=ON (options.fPIC)
-- Conan toolchain: C++ Standard 20 with extensions ON
-- Conan toolchain: Setting BUILD_SHARED_LIBS = OFF
-- The C compiler identification is GNU 10.4.0
-- The CXX compiler identification is GNU 10.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc-10 - 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: /usr/bin/aarch64-linux-gnu-g++-10 - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building for architecture ARCH=arm64
-- OPENTELEMETRY_ABI_VERSION_NO=1
-- OPENTELEMETRY_VERSION=1.14.2
-- Performing Test check_cxx_compiler_flag_-Wno-type-limits
-- Performing Test check_cxx_compiler_flag_-Wno-type-limits - Success
-- Performing Test check_cxx_compiler_flag_-Wno-deprecated-declarations
-- Performing Test check_cxx_compiler_flag_-Wno-deprecated-declarations - Success
-- Performing Test check_cxx_compiler_flag_-Wno-unused-parameter
-- Performing Test check_cxx_compiler_flag_-Wno-unused-parameter - Success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Conan: Component target declared 'absl::config'
-- Conan: Component target declared 'absl::dynamic_annotations'
-- Conan: Component target declared 'absl::core_headers'
-- Conan: Component target declared 'absl::pretty_function'
-- Conan: Component target declared 'absl::fast_type_id'
-- Conan: Component target declared 'absl::prefetch'
-- Conan: Component target declared 'absl::algorithm'
-- Conan: Component target declared 'absl::hashtable_debug_hooks'
-- Conan: Component target declared 'absl::node_slot_policy'
-- Conan: Component target declared 'absl::non_temporal_arm_intrinsics'
-- Conan: Component target declared 'absl::non_temporal_memcpy'
-- Conan: Component target declared 'absl::leak_check'
-- Conan: Component target declared 'absl::flags_commandlineflag_internal'
-- Conan: Component target declared 'absl::log_internal_config'
-- Conan: Component target declared 'absl::log_internal_nullguard'
-- Conan: Component target declared 'absl::log_internal_voidify'
-- Conan: Component target declared 'absl::type_traits'
-- Conan: Component target declared 'absl::meta'
-- Conan: Component target declared 'absl::bits'
-- Conan: Component target declared 'absl::int128'
-- Conan: Component target declared 'absl::numeric'
-- Conan: Component target declared 'absl::numeric_representation'
-- Conan: Component target declared 'absl::exponential_biased'
-- Conan: Component target declared 'absl::periodic_sampler'
-- Conan: Component target declared 'absl::random_seed_gen_exception'
-- Conan: Component target declared 'absl::random_internal_traits'
-- Conan: Component target declared 'absl::random_internal_fast_uniform_bits'
-- Conan: Component target declared 'absl::random_internal_iostream_state_saver'
-- Conan: Component target declared 'absl::random_internal_wide_multiply'
-- Conan: Component target declared 'absl::random_internal_fastmath'
-- Conan: Component target declared 'absl::random_internal_pcg_engine'
-- Conan: Component target declared 'absl::random_internal_platform'
-- Conan: Component target declared 'absl::random_internal_randen_slow'
-- Conan: Component target declared 'absl::random_internal_randen_hwaes_impl'
-- Conan: Component target declared 'absl::random_internal_uniform_helper'
-- Conan: Component target declared 'absl::has_ostream_operator'
-- Conan: Component target declared 'absl::cordz_update_tracker'
-- Conan: Component target declared 'absl::civil_time'
-- Conan: Component target declared 'absl::time_zone'
-- Conan: Component target declared 'absl::compare'
-- Conan: Component target declared 'absl::if_constexpr'
-- Conan: Component target declared 'absl::atomic_hook'
-- Conan: Component target declared 'absl::errno_saver'
-- Conan: Component target declared 'absl::log_severity'
-- Conan: Component target declared 'absl::no_destructor'
-- Conan: Component target declared 'absl::nullability'
-- Conan: Component target declared 'absl::raw_logging_internal'
-- Conan: Component target declared 'absl::base_internal'
-- Conan: Component target declared 'absl::throw_delegate'
-- Conan: Component target declared 'absl::scoped_set_env'
-- Conan: Component target declared 'absl::strerror'
-- Conan: Component target declared 'absl::algorithm_container'
-- Conan: Component target declared 'absl::common_policy_traits'
-- Conan: Component target declared 'absl::hashtable_debug'
-- Conan: Component target declared 'absl::container_common'
-- Conan: Component target declared 'absl::debugging_internal'
-- Conan: Component target declared 'absl::overload'
-- Conan: Component target declared 'absl::memory'
-- Conan: Component target declared 'absl::random_internal_generate_real'
-- Conan: Component target declared 'absl::random_internal_randen_hwaes'
-- Conan: Component target declared 'absl::cordz_functions'
-- Conan: Component target declared 'absl::bad_any_cast_impl'
-- Conan: Component target declared 'absl::span'
-- Conan: Component target declared 'absl::bad_optional_access'
-- Conan: Component target declared 'absl::bad_variant_access'
-- Conan: Component target declared 'absl::utility'
-- Conan: Component target declared 'absl::spinlock_wait'
-- Conan: Component target declared 'absl::base'
-- Conan: Component target declared 'absl::endian'
-- Conan: Component target declared 'absl::cleanup_internal'
-- Conan: Component target declared 'absl::cleanup'
-- Conan: Component target declared 'absl::compressed_tuple'
-- Conan: Component target declared 'absl::fixed_array'
-- Conan: Component target declared 'absl::inlined_vector_internal'
-- Conan: Component target declared 'absl::inlined_vector'
-- Conan: Component target declared 'absl::container_memory'
-- Conan: Component target declared 'absl::hash_policy_traits'
-- Conan: Component target declared 'absl::crc_cpu_detect'
-- Conan: Component target declared 'absl::crc_internal'
-- Conan: Component target declared 'absl::stacktrace'
-- Conan: Component target declared 'absl::demangle_internal'
-- Conan: Component target declared 'absl::debugging'
-- Conan: Component target declared 'absl::any_invocable'
-- Conan: Component target declared 'absl::bind_front'
-- Conan: Component target declared 'absl::function_ref'
-- Conan: Component target declared 'absl::city'
-- Conan: Component target declared 'absl::low_level_hash'
-- Conan: Component target declared 'absl::log_internal_conditions'
-- Conan: Component target declared 'absl::random_internal_distribution_caller'
-- Conan: Component target declared 'absl::random_internal_randen'
-- Conan: Component target declared 'absl::string_view'
-- Conan: Component target declared 'absl::charset'
-- Conan: Component target declared 'absl::strings_internal'
-- Conan: Component target declared 'absl::bad_any_cast'
-- Conan: Component target declared 'absl::optional'
-- Conan: Component target declared 'absl::variant'
-- Conan: Component target declared 'absl::malloc_internal'
-- Conan: Component target declared 'absl::random_bit_gen_ref'
-- Conan: Component target declared 'absl::random_internal_mock_helpers'
-- Conan: Component target declared 'absl::random_internal_randen_engine'
-- Conan: Component target declared 'absl::strings'
-- Conan: Component target declared 'absl::str_format_internal'
-- Conan: Component target declared 'absl::graphcycles_internal'
-- Conan: Component target declared 'absl::time'
-- Conan: Component target declared 'absl::any'
-- Conan: Component target declared 'absl::layout'
-- Conan: Component target declared 'absl::symbolize'
-- Conan: Component target declared 'absl::examine_stack'
-- Conan: Component target declared 'absl::failure_signal_handler'
-- Conan: Component target declared 'absl::flags_path_util'
-- Conan: Component target declared 'absl::flags_commandlineflag'
-- Conan: Component target declared 'absl::flags_private_handle_accessor'
-- Conan: Component target declared 'absl::hash'
-- Conan: Component target declared 'absl::log_internal_globals'
-- Conan: Component target declared 'absl::log_internal_proto'
-- Conan: Component target declared 'absl::log_internal_nullstream'
-- Conan: Component target declared 'absl::log_internal_append_truncated'
-- Conan: Component target declared 'absl::log_entry'
-- Conan: Component target declared 'absl::log_sink'
-- Conan: Component target declared 'absl::log_internal_fnmatch'
-- Conan: Component target declared 'absl::random_distributions'
-- Conan: Component target declared 'absl::random_internal_seed_material'
-- Conan: Component target declared 'absl::random_internal_pool_urbg'
-- Conan: Component target declared 'absl::random_internal_salted_seed_seq'
-- Conan: Component target declared 'absl::random_internal_nonsecure_base'
-- Conan: Component target declared 'absl::str_format'
-- Conan: Component target declared 'absl::kernel_timeout_internal'
-- Conan: Component target declared 'absl::synchronization'
-- Conan: Component target declared 'absl::crc32c'
-- Conan: Component target declared 'absl::crc_cord_state'
-- Conan: Component target declared 'absl::flags_program_name'
-- Conan: Component target declared 'absl::flags_config'
-- Conan: Component target declared 'absl::flags_marshalling'
-- Conan: Component target declared 'absl::flags_internal'
-- Conan: Component target declared 'absl::log_internal_format'
-- Conan: Component target declared 'absl::vlog_config_internal'
-- Conan: Component target declared 'absl::absl_vlog_is_on'
-- Conan: Component target declared 'absl::vlog_is_on'
-- Conan: Component target declared 'absl::sample_recorder'
-- Conan: Component target declared 'absl::random_seed_sequences'
-- Conan: Component target declared 'absl::random_internal_distribution_test_util'
-- Conan: Component target declared 'absl::cord_internal'
-- Conan: Component target declared 'absl::cordz_statistics'
-- Conan: Component target declared 'absl::cordz_handle'
-- Conan: Component target declared 'absl::cordz_info'
-- Conan: Component target declared 'absl::cordz_sample_token'
-- Conan: Component target declared 'absl::cordz_update_scope'
-- Conan: Component target declared 'absl::cord'
-- Conan: Component target declared 'absl::btree'
-- Conan: Component target declared 'absl::hash_function_defaults'
-- Conan: Component target declared 'absl::hashtablez_sampler'
-- Conan: Component target declared 'absl::raw_hash_set'
-- Conan: Component target declared 'absl::log_globals'
-- Conan: Component target declared 'absl::log_initialize'
-- Conan: Component target declared 'absl::random_random'
-- Conan: Component target declared 'absl::status'
-- Conan: Component target declared 'absl::statusor'
-- Conan: Component target declared 'absl::flat_hash_set'
-- Conan: Component target declared 'absl::node_hash_set'
-- Conan: Component target declared 'absl::raw_hash_map'
-- Conan: Component target declared 'absl::log_internal_log_sink_set'
-- Conan: Component target declared 'absl::log_sink_registry'
-- Conan: Component target declared 'absl::flat_hash_map'
-- Conan: Component target declared 'absl::node_hash_map'
-- Conan: Component target declared 'absl::flags_reflection'
-- Conan: Component target declared 'absl::flags'
-- Conan: Component target declared 'absl::flags_usage_internal'
-- Conan: Component target declared 'absl::flags_usage'
-- Conan: Component target declared 'absl::flags_parse'
-- Conan: Component target declared 'absl::log_internal_flags'
-- Conan: Component target declared 'absl::log_internal_message'
-- Conan: Component target declared 'absl::log_internal_strip'
-- Conan: Component target declared 'absl::log_flags'
-- Conan: Component target declared 'absl::log_internal_structured'
-- Conan: Component target declared 'absl::log_structured'
-- Conan: Component target declared 'absl::log_internal_check_op'
-- Conan: Component target declared 'absl::log_internal_log_impl'
-- Conan: Component target declared 'absl::absl_log'
-- Conan: Component target declared 'absl::log'
-- Conan: Component target declared 'absl::log_streamer'
-- Conan: Component target declared 'absl::log_internal_check_impl'
-- Conan: Component target declared 'absl::absl_check'
-- Conan: Component target declared 'absl::check'
-- Conan: Component target declared 'absl::die_if_null'
-- Conan: Target declared 'abseil::abseil'
-- Conan: Including build module from '/home/username/.conan/data/abseil/20240116.2/_/_/package/039460df6724ac695179ed28b60866dbdf3ded1d/lib/cmake/conan_trick/cxx_std.cmake'
-- Conan: Component target declared 'utf8_range::utf8_range'
-- Conan: Component target declared 'utf8_range::utf8_validity'
-- Conan: Component target declared 'protobuf::libprotobuf'
-- Conan: Component target declared 'protobuf::libprotoc'
-- Conan: Target declared 'protobuf::protobuf'
-- Conan: Target declared 'ZLIB::ZLIB'
-- Conan: Including build module from '/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/lib/cmake/protobuf/protobuf-generate.cmake'
-- Conan: Including build module from '/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/lib/cmake/protobuf/protobuf-module.cmake'
-- Conan: Including build module from '/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/lib/cmake/protobuf/protobuf-options.cmake'
-- Conan: Including build module from '/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/lib/cmake/protobuf/protobuf-conan-protoc-target.cmake'
-- PROTOBUF_PROTOC_EXECUTABLE=/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/bin/protoc
-- opentelemetry-proto dependency satisfied by: external path
-- Conan: Component target declared 'CURL::libcurl'
-- Conan: Component target declared 'OpenSSL::Crypto'
-- Conan: Component target declared 'OpenSSL::SSL'
-- Conan: Target declared 'openssl::openssl'
-- Conan: Including build module from '/home/username/.conan/data/openssl/3.3.2/_/_/package/073deb8d612d032f04457d1b5d9d809d587e076a/lib/cmake/conan-official-openssl-variables.cmake'
-- Found CURL: CURL::libcurl, version 8.8.0
-- nlohmann::json dependency satisfied by: package
-- Building WITH_STL=OFF
-- Configuring done (1.2s)
-- Generating done (0.2s)
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_BENCHMARK
    WITH_JAEGER
    WITH_ZPAGES


-- Build files have been written to: /home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug
opentelemetry-cpp/1.14.2: CMake command: cmake --build "/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug" '--' '-j16'
[  0%] [Run]: "/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/bin/protoc" "--proto_path=/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res" "--cpp_out=/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug/generated/third_party/opentelemetry-proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/common/v1/common.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/resource/v1/resource.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/trace/v1/trace.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/logs/v1/logs.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/metrics/v1/metrics.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/collector/trace/v1/trace_service.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/collector/logs/v1/logs_service.proto" "/home/username/.conan/data/opentelemetry-proto/1.3.0/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/res/opentelemetry/proto/collector/metrics/v1/metrics_service.proto"
/home/username/.conan/data/protobuf/5.27.0/_/_/package/b274746a29bc168991595e6f603647d70f1836c4/bin/protoc: 2: Syntax error: word unexpected (expecting ")")
gmake[2]: *** [CMakeFiles/opentelemetry_proto.dir/build.make:74: generated/third_party/opentelemetry-proto/opentelemetry/proto/common/v1/common.pb.h] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:399: CMakeFiles/opentelemetry_proto.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
[  1%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/random.cc.o
[  2%] Building CXX object sdk/src/version/CMakeFiles/opentelemetry_version.dir/version.cc.o
[  3%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/core.cc.o
[  4%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/base64.cc.o
[  5%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/env_variables.cc.o
[  5%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/global_log_handler.cc.o
[  6%] Building CXX object sdk/src/common/CMakeFiles/opentelemetry_common.dir/platform/fork_unix.cc.o
[  7%] Linking CXX static library libopentelemetry_version.a
[  7%] Built target opentelemetry_version
[  8%] Linking CXX static library libopentelemetry_common.a
[  8%] Built target opentelemetry_common
gmake: *** [Makefile:136: all] Error 2
opentelemetry-cpp/1.14.2: 
opentelemetry-cpp/1.14.2: ERROR: Package '89ad4135a60f1e47117c8b2d595789cad000f235' build failed
opentelemetry-cpp/1.14.2: WARN: Build folder /home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug
ERROR: opentelemetry-cpp/1.14.2: Error in build() method, line 295
	cmake.build()
	ConanException: Error 2 while executing cmake --build "/home/username/.conan/data/opentelemetry-cpp/1.14.2/_/_/build/89ad4135a60f1e47117c8b2d595789cad000f235/build/Debug" '--' '-j16'
@unusedcode unusedcode added the bug Something isn't working label Nov 21, 2024
@AbrilRBS AbrilRBS self-assigned this Nov 21, 2024
@AbrilRBS
Copy link
Member

Hi @unusedcode thanks a lot for the report. I've tried to reproduce this in Conan 2, and so far it seems like it's working nice. I'll try to reproduce for Conan 1 tomorrow, but please note that Conan 1 support is deprecated in CCI, and recipes no longer get updates for it, so you'd need to fork it to be able to use the changes with your own remote

@unusedcode
Copy link
Author

Unfortunately I have to use Conan 1.x due to some other dependencies that are not yet upgraded to Conan 2. I also tried building opentelemetry-cpp with Conan 2 and it builds with no issues. The underlying problem is that the wrong protoc executable for the build architecture is used during compilation. Is there any way for me to get the newest recipes for open-telemetry and build them locally for Conan 1.x?

@unusedcode
Copy link
Author

@AbrilRBS I copied and edited the recipe of opentelemetry-cpp on my computer and exported it into my local conan cache. That's when I found out that the changes of the open PR #25028 also fix the problems that I experience when cross compiling. For now I can use my local recipe but it would be nice, if the PR would be merged into master. Thanks for your help!

@AbrilRBS
Copy link
Member

Great! I just finished compiling on Conan 1, and I was not able to reproduce either when crosscompiling, which is weird.

Either way, it's great to hear that you have found the issue. I'd recommend pasting your successful/failing logs in the PR to give more context.

Also note that even if the PR gets merged, this won't fix your issue in Conan 1, as it has been forzen, see #25461

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants