I can not emerge mozc when upgrade system. I downgrade dev-cpp/abseil-cpp from 20210324.0 to 20200923.2 and I can emerge mozc. Reproducible: Always Steps to Reproduce: 1. sudo emerge --oneshot '=dev-cpp/abseil-cpp-20210324.0' '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429' Actual Results: [444/524] /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -pthread -o gen_emoticon_rewriter_data_main -Wl,--start-group obj.host/rewriter/gen_emoticon_rewriter_data_main.gen_emoticon_rewriter_data.o obj.host/base/libbase.a obj.host/data_manager/libserialized_dictionary.a obj.host/base/libbase_core.a obj.host/base/libclock.a obj.host/base/libsingleton.a obj.host/base/libmutex.a obj.host/base/libflags.a obj.host/base/libhash.a obj.host/base/libserialized_string_array.a -Wl,--end-group -labsl_civil_time -labsl_time -labsl_time_zone -labsl_str_format_internal -labsl_strings -labsl_strings_internal FAILED: gen_emoticon_rewriter_data_main /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -pthread -o gen_emoticon_rewriter_data_main -Wl,--start-group obj.host/rewriter/gen_emoticon_rewriter_data_main.gen_emoticon_rewriter_data.o obj.host/base/libbase.a obj.host/data_manager/libserialized_dictionary.a obj.host/base/libbase_core.a obj.host/base/libclock.a obj.host/base/libsingleton.a obj.host/base/libmutex.a obj.host/base/libflags.a obj.host/base/libhash.a obj.host/base/libserialized_string_array.a -Wl,--end-group -labsl_civil_time -labsl_time -labsl_time_zone -labsl_str_format_internal -labsl_strings -labsl_strings_internal /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: obj.host/rewriter/gen_emoticon_rewriter_data_main.gen_emoticon_rewriter_data.o: in function `absl::lts_20210324::container_internal::raw_hash_set<absl::lts_20210324::container_internal::FlatHashMapPolicy<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::drop_deletes_without_resize()': gen_emoticon_rewriter_data.cc:(.text._ZN4absl12lts_2021032418container_internal12raw_hash_setINS1_17FlatHashMapPolicyINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiEESt4hashIS9_ESt8equal_toIS9_ESaISt4pairIKS9_iEEE27drop_deletes_without_resizeEv[_ZN4absl12lts_2021032418container_internal12raw_hash_setINS1_17FlatHashMapPolicyINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiEESt4hashIS9_ESt8equal_toIS9_ESaISt4pairIKS9_iEEE27drop_deletes_without_resizeEv]+0x40): undefined reference to `absl::lts_20210324::container_internal::ConvertDeletedToEmptyAndFullToDeleted(signed char*, unsigned long)' collect2: error: ld returned 1 exit status ~~~ ompiler clang --use_1byte_cost false ninja: build stopped: subcommand failed. Traceback (most recent call last): File "/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src/build_mozc.py", line 876, in <module> main() File "/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src/build_mozc.py", line 863, in main BuildMain(cmd_opts, cmd_args) File "/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src/build_mozc.py", line 608, in BuildMain BuildWithNinja(options, targets) File "/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src/build_mozc.py", line 582, in BuildWithNinja RunOrDie([ninja, '-j32', '-l0', '-v', '-C', build_arg, target_name]) File "/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src/build_tools/util.py", line 98, in RunOrDie raise RunOrDieError('\n'.join(['', build_tools.util.RunOrDieError: ========== ERROR: ninja -j32 -l0 -v -C out_linux/Release mozc_server ========== * ERROR: app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo failed (compile phase): * Building failed * * Call stack: * ebuild.sh, line 125: Called src_compile * environment, line 2336: Called die * The specific snippet of code: * execute "${PYTHON}" build_mozc.py build -c ${BUILD_TYPE} -v "${targets[@]}" || die "Building failed"; * * If you need support, post the output of `emerge --info '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo'`, * the complete build log and the output of `emerge -pqv '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo'`. * The complete build log is located at '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/environment'. * Working directory: '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src' * S: '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src' >>> Failed to emerge app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429, Log file: >>> '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/build.log' * Messages for package app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429: * ERROR: app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo failed (compile phase): * Building failed * * Call stack: * ebuild.sh, line 125: Called src_compile * environment, line 2336: Called die * The specific snippet of code: * execute "${PYTHON}" build_mozc.py build -c ${BUILD_TYPE} -v "${targets[@]}" || die "Building failed"; * * If you need support, post the output of `emerge --info '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo'`, * the complete build log and the output of `emerge -pqv '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429::gentoo'`. * The complete build log is located at '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/environment'. * Working directory: '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src' * S: '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/work/mozc-2.26.4220_p20201212102434_p20201219202429/src' * * The following package has failed to build, install, or execute postinst: * * (app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429:0/0::gentoo, ebuild scheduled for merge), Log file: * '/var/tmp/portage/app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429/temp/build.log' * Expected Results: emerge is success.
Created attachment 697020 [details] emerge --info
~/Downloads 2021-04-03T21:40:30 ❯ equ abseil-cpp [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for dev-cpp/abseil-cpp-20210324.0: U I + + cxx17 : Build with -DCMAKE_CXX_STANDARD=17 (required by some revdeps) - - test : Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) ~/Downloads 2021-04-03T21:40:37 ❯ equ '=app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429' [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for app-i18n/mozc-2.26.4220_p20201212102434_p20201219202429: U I - - debug : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces + + emacs : Add support for GNU Emacs - - fcitx4 : Enable support for app-i18n/fcitx 4 + + gui : Install graphical user interface tool (mozc_tool) + + ibus : Enable support for app-i18n/ibus + - renderer : Enable native candidate window - - test : Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)
I tried disable ccache.
https://github.com/abseil/abseil-cpp/commit/1b465af3bf865f588251470ea0dec60851a24041 includes: > --- absl/container/internal/raw_hash_set.cc > +++ absl/container/internal/raw_hash_set.cc > @@ -43,6 +43,19 @@ bool ShouldInsertBackwards(size_t hash, ctrl_t* ctrl) { > return (H1(hash, ctrl) ^ RandomSeed()) % 13 > 6; > } > > +void ConvertDeletedToEmptyAndFullToDeleted( > + ctrl_t* ctrl, size_t capacity) { > + assert(ctrl[capacity] == kSentinel); > + assert(IsValidCapacity(capacity)); > + for (ctrl_t* pos = ctrl; pos != ctrl + capacity + 1; pos += Group::kWidth) { > + Group{pos}.ConvertSpecialToEmptyAndFullToDeleted(pos); > + } > + // Copy the cloned ctrl bytes. > + std::memcpy(ctrl + capacity + 1, ctrl, Group::kWidth); > + ctrl[capacity] = kSentinel; > +} > + > + > } // namespace container_internal > ABSL_NAMESPACE_END > } // namespace absl > --- absl/container/internal/raw_hash_set.h > +++ absl/container/internal/raw_hash_set.h > @@ -472,17 +472,7 @@ inline bool IsValidCapacity(size_t n) { return ((n + 1) & n) == 0 && n > 0; } > // DELETED -> EMPTY > // EMPTY -> EMPTY > // FULL -> DELETED > -inline void ConvertDeletedToEmptyAndFullToDeleted( > - ctrl_t* ctrl, size_t capacity) { > - assert(ctrl[capacity] == kSentinel); > - assert(IsValidCapacity(capacity)); > - for (ctrl_t* pos = ctrl; pos != ctrl + capacity + 1; pos += Group::kWidth) { > - Group{pos}.ConvertSpecialToEmptyAndFullToDeleted(pos); > - } > - // Copy the cloned ctrl bytes. > - std::memcpy(ctrl + capacity + 1, ctrl, Group::kWidth); > - ctrl[capacity] = kSentinel; > -} > +void ConvertDeletedToEmptyAndFullToDeleted(ctrl_t* ctrl, size_t capacity); > > // Rounds up the capacity to the next power of 2 minus 1, with a minimum of 1. > inline size_t NormalizeCapacity(size_t n) { Encoded form of absl::lts_20210324::container_internal::ConvertDeletedToEmptyAndFullToDeleted(signed char*, unsigned long) is _ZN4absl12lts_2021032418container_internal37ConvertDeletedToEmptyAndFullToDeletedEPam. This function is now defined in libabsl_raw_hash_set.so, so we should add linking against that library. Difference between symbols in libabsl_raw_hash_set.so: > --- abseil-cpp-20200923.2 libabsl_raw_hash_set.so > +++ abseil-cpp-20210324.0 libabsl_raw_hash_set.so > @@ -1,7 +1,9 @@ > w _ITM_deregisterTMCloneTable > w _ITM_registerTMCloneTable > -T absl::lts_2020_09_23::container_internal::ShouldInsertBackwards(unsigned long, signed char*) > -u absl::lts_2020_09_23::container_internal::RandomSeed()::counter > +T absl::lts_20210324::container_internal::ShouldInsertBackwards(unsigned long, signed char*) > +T absl::lts_20210324::container_internal::ConvertDeletedToEmptyAndFullToDeleted(signed char*, unsigned long) > +u absl::lts_20210324::container_internal::RandomSeed()::counter > +U __assert_fail@GLIBC_2.2.5 > w __cxa_finalize@GLIBC_2.2.5 > A __gentoo_check_ldflags__ > w __gmon_start__
I've added sublots to abseil. Please utilize subslot dep and thanks for letting me know. In grpc I already have subslot dep, so that one should already be fine.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7090a1909f414b0b391e778a20d9d31efd75bbd commit c7090a1909f414b0b391e778a20d9d31efd75bbd Author: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> AuthorDate: 2021-04-04 01:00:00 +0000 Commit: Mike Gilbert <floppym@gentoo.org> CommitDate: 2021-04-05 19:06:34 +0000 app-i18n/mozc: 2.26.4220: Depend on =dev-cpp/abseil-cpp-20200923*. Bug: https://bugs.gentoo.org/779877 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> Signed-off-by: Mike Gilbert <floppym@gentoo.org> app-i18n/mozc/mozc-2.26.4220_p20201212102434_p20201219202429.ebuild | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
Currently on my system media-libs/tg_owt depends on: >=dev-cpp/abseil-cpp-20211102.0:=[cxx17(+)] and app-i18n/mozc depends on: =dev-cpp/abseil-cpp-20200923*[cxx17(+)] which prevents me from updating mozc to 2.26 while previous version (mozc 2.23) is already gone from tree
Upstream moved to abseil-cpp-20210324 in version 2.26.4660.102 https://github.com/google/mozc/commit/eba0e64efc6ead4fd36a95fa18fc35b5c5b2521d
Moving on in bug 843227 then.