undefined reference errors (absl::strings_internal::CatPieces and absl::ByChar::Find)
envgap__abseil__abseil-cpp-640
Original GitHub issue ↗Opened 2020-03-13
01 / FAILURE SIGNATURE
As reported upstream
Thanks for the great project! We are using it in [OpenSpiel](https://github.com/deepmind/open_spiel/) and this week, we encountered a few undefined reference errors (building via CMake both using clang++ and g++) cause by a commit between today and Monday March 8th, so we've had to fix our dependency to a March 6th commit.
Not a benchmark task.
- No curated issue-specific recipe or verified environment fix is available.
02 / ENVIRONMENT RECIPE
- Base commit
Not freshly verified- Manifest
CMakeLists.txt- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
abseil/abseil-cpp #640 · read the original issue
Hi all, Thanks for the great project! We are using it in [OpenSpiel](https://github.com/deepmind/open_spiel/) and this week, we encountered a few undefined reference errors (building via CMake both using clang++ and g++) cause by a commit between today and Monday March 8th, so we've had to fix our dependency to a March 6th commit. Maybe we have to link to a new target, or we're using `StrCat` in a way that is no longer supported? Here's the full error if it helps: ``` [ 43%] Building CXX object games/CMakeFiles/bridge_double_dummy_solver.dir/bridge/double_dummy_solver/src/File.cpp.o /usr/bin/ld: ../CMakeFiles/open_spiel_core.dir/spiel.cc.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > absl::StrCat<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char [7], std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [7], std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': spiel.cc:(.text._ZN4absl6StrCatIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEA7_cS6_EEES6_RKNS_8AlphaNumESA_SA_SA_SA_DpRKT_[_ZN4absl6StrCatIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEA7_cS6_EEES6_RKNS_8AlphaNumESA_SA_SA_SA_DpRKT_]+0x151): undefined reference to `absl::strings_internal::CatPieces[abi:cxx11](std::initializer_list<std::basic_string_view<char, std::char_traits<char> > >)' /usr/bin/ld: ../CMakeFiles/open_spiel_core.dir/spiel.cc.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > absl::StrCat<char [2]>(absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, absl::AlphaNum const&, char const (&) [2])': spiel.cc:(.text._ZN4absl6StrCatIJA2_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_8AlphaNumESA_SA_SA_SA_DpRKT_[_ZN4absl6StrCatIJA2_cEEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_8AlphaNumESA_SA_SA_SA_DpRKT_]+0xe3): undefined reference to `absl::strings_internal::CatPieces[abi:cxx11](std::initializer_list<std::basic_string_view<char, std::char_traits<char> > >)' /usr/bin/ld: ../CMakeFiles/open_spiel_core.dir/spiel.cc.o: in function `absl::strings_internal::SplitIterator<absl::strings_internal::Splitter<absl::ByChar, absl::AllowEmpty> >::operator++()': spiel.cc:(.text._ZN4absl16strings_internal13SplitIteratorINS0_8SplitterINS_6ByCharENS_10AllowEmptyEEEEppEv[_ZN4absl16strings_internal13SplitIteratorINS0_8SplitterINS_6ByCharENS_10AllowEmptyEEEEppEv]+0x79): undefined reference to `absl::ByChar::Find(std::basic_string_view<char, std::char_traits<char> >, unsigned long) const' [ 44%] Building CXX object games/CMakeFiles/games.dir/blotto.cc.o clang: error: linker command failed with
04 / LABELS
Labels from the report text only; not yet run
underspecificationLabel rules and the text that matched
[
{
"category": "underspecification",
"rule": "signature.missing_system_requirement",
"source": "failure_signature",
"excerpt": "Thanks for the great project! We are using it in [OpenSpiel](https://github.com/deepmind/open_spiel/) and this week, we encountered a few undefined reference errors (building via CMake both using clang++ and g++) cause by a commit between today and Monday March 8th, so we've had to fix our dependency to a March 6th commit."
}
]Issue-specific recipe and runtime smoke command require review against the complete issue and repository.
Legacy reproduction is generic install-only; match the actual issue failure before admission.