open-telemetry / opentelemetry-cpp

The OpenTelemetry C++ Client
https://opentelemetry.io/
Apache License 2.0
860 stars 410 forks source link

ABSL library conflicts: Reference to 'is_trivially_move_assignable' is ambiguous #2238

Closed CoderPoet closed 1 year ago

CoderPoet commented 1 year ago

Describe your environment Describe any aspect of your environment relevant to the problem, including your platform, build system, version numbers of installed dependencies, etc. If you're reporting a problem with a specific version of a library in this repo, please check whether the problem has been fixed on main branch.

Steps to reproduce Use vcpkg to install OpenTelemetry dependencies

{
  "name": "bug-reporter",
  "version": "0.1.0",
  "builtin-baseline": "21bbb14c4113b89cd06402e852e075341722304f",
  "dependencies": [
    {
      "name": "opentelemetry-cpp",
      "features": [
        "otlp",
        "otlp-grpc",
        "zpages",
        "prometheus"
      ]
    }
  ]
}

What is the expected behavior? ABSL libraries no longer conflict with each other

What is the actual behavior?

Reference to 'is_trivially_move_assignable' is ambiguous 

candidate found by name lookup is 'absl::lts_20230125::is_trivially_move_assignable' 

candidate found by name lookup is 'absl::otel_v1::is_trivially_move_assignable'

Additional context Add any other context about the problem here.

CoderPoet commented 1 year ago

https://github.com/microsoft/vcpkg/blob/master/ports/opentelemetry-cpp/portfile.cmake#L61

WITH_ABSEIL=ON does not take effect

marcalff commented 1 year ago

I assume the message Reference to 'is_trivially_move_assignable' is ambiguous is reported during the build, at compile time.

Please paste the FULL error message given by the compiler, including in which file/line the error occurs, and with the full include stack, so this can be investigated.

marcalff commented 1 year ago

Closing.

Feel free to reopen if/when more details are available, to reproduce the issue.