chromeos-base/libbrillo build fails with binutils-2.27 emerged into the chroot.
$ sudo emerge chromeos-base/libbrillo
...
ninja: Entering directory `/var/cache/portage/chromeos-base/libbrillo/out/Default'
[69/89] SOLINK lib/libpolicy-395517.so
FAILED: lib/libpolicy-395517.so lib/libpolicy-395517.so.TOC
if [ ! -e lib/libpolicy-395517.so -o ! -e lib/libpolicy-395517.so.TOC ]; then flock linker.lock x86_64-pc-linux-gnu-g++ -shared -Wl,--version-script,/var/tmp/portage/chromeos-base/libbrillo-0.0.1-r535/work/libbrillo-0.0.1/platform2/libbrillo/libpolicy.ver -Wl,-O2 -Wl,--as-needed -Wl,-O2 -Wl,--as-needed -Wl,-z,relro -Wl,-z,noexecstack -Wl,-z,now -Wl,--as-needed -pthread -o lib/libpolicy-395517.so -Wl,-soname=libpolicy-395517.so -Wl,--whole-archive obj/libbrillo/policy/libpolicy-395517.device_policy.o obj/libbrillo/policy/libpolicy-395517.device_policy_impl.o obj/libbrillo/policy/libpolicy-395517.libpolicy.o obj/common-mk/libpolicy-protos.a lib/libinstallattributes-395517.so -Wl,--no-whole-archive -lbase-395517 -lssl -lcrypto -lprotobuf-lite -lpthread && { readelf -d lib/libpolicy-395517.so | grep SONAME ; nm -gD -f p lib/libpolicy-395517.so | cut -f1-2 -d' '; } > lib/libpolicy-395517.so.TOC; else flock linker.lock x86_64-pc-linux-gnu-g++ -shared -Wl,--version-script,/var/tmp/portage/chromeos-base/libbrillo-0.0.1-r535/work/libbrillo-0.0.1/platform2/libbrillo/libpolicy.ver -Wl,-O2 -Wl,--as-needed -Wl,-O2 -Wl,--as-needed -Wl,-z,relro -Wl,-z,noexecstack -Wl,-z,now -Wl,--as-needed -pthread -o lib/libpolicy-395517.so -Wl,-soname=libpolicy-395517.so -Wl,--whole-archive obj/libbrillo/policy/libpolicy-395517.device_policy.o obj/libbrillo/policy/libpolicy-395517.device_policy_impl.o obj/libbrillo/policy/libpolicy-395517.libpolicy.o obj/common-mk/libpolicy-protos.a lib/libinstallattributes-395517.so -Wl,--no-whole-archive -lbase-395517 -lssl -lcrypto -lprotobuf-lite -lpthread && { readelf -d lib/libpolicy-395517.so | grep SONAME ; nm -gD -f p lib/libpolicy-395517.so | cut -f1-2 -d' '; } > lib/libpolicy-395517.so.tmp && if ! cmp -s lib/libpolicy-395517.so.tmp lib/libpolicy-395517.so.TOC; then mv lib/libpolicy-395517.so.tmp lib/libpolicy-395517.so.TOC ; fi; fi
/usr/x86_64-pc-linux-gnu/binutils-bin/2.27/ld.bfd.real: obj/common-mk/gen/include/bindings/policy-protos.chrome_device_policy.pb.o: relocation R_X86_64_PC32 against symbol `_ZNSs4_Rep20_S_empty_rep_storageE@@GLIBCXX_3.4' can not be used when making a shared object; recompile with -fPIC
/usr/x86_64-pc-linux-gnu/binutils-bin/2.27/ld.bfd.real: final link failed: Bad value
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Comment 1 by bugdroid1@chromium.org
, May 4 2017