InBetweenNames / gentooLTO

A Gentoo Portage configuration for building with -O3, Graphite, and LTO optimizations
GNU General Public License v2.0
570 stars 96 forks source link

www-client/firefox-60.2.2 error when built with +clang #157

Closed owenthewizard closed 6 years ago

owenthewizard commented 6 years ago

build.txt info.txt

Of particular interest:

855:22.54 /usr/bin/ld.lld: error: undefined symbol: Hunspell::get_dict_encoding() const
855:22.54 >>> referenced by Unified_cpp_hunspell_glue0.cpp
855:22.54 >>>               ../../extensions/spellcheck/hunspell/glue/Unified_cpp_hunspell_glue0.o:(mozHunspell::SetDictionary(char16_t const*))
855:22.54 
855:22.54 /usr/bin/ld.lld: error: undefined symbol: Hunspell::spell(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)
855:22.54 >>> referenced by Unified_cpp_hunspell_glue0.cpp
855:22.54 >>>               ../../extensions/spellcheck/hunspell/glue/Unified_cpp_hunspell_glue0.o:(mozHunspell::Check(char16_t const*, bool*))
855:22.54 
855:22.54 /usr/bin/ld.lld: error: undefined symbol: Hunspell::suggest(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
855:22.54 >>> referenced by Unified_cpp_hunspell_glue0.cpp
855:22.54 >>>               ../../extensions/spellcheck/hunspell/glue/Unified_cpp_hunspell_glue0.o:(mozHunspell::Suggest(char16_t const*, char16_t***, unsigned int*))
855:22.54 clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)
InBetweenNames commented 6 years ago

strip-flags: CFLAGS: changed '-march=native -fgraphite-identity -floop-nest-optimize -fuse-linker-plugin -pipe -fomit-frame-pointer -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu' to '-march=native -pipe -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu'

It's probably the -Wl, flags. Since you are using lld, I have no idea what those flags will do.

owenthewizard commented 6 years ago

Hmm, same error even after stripping away the -Wl flags...

InBetweenNames commented 6 years ago

I doubt this is an LTO/-O3/Graphite/-fipa-pta issue then. Curiously, strip-flags does not acknowledge your -O setting.

InBetweenNames commented 6 years ago

Going to close this as it does not appear to be an lto-overlay related issue.