Summary: | sys-devel/llvm-3.8.1-r2 - app-text/poppler linking issue with USE="default-libcxx default-compiler-rt" | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Bertrand Jacquin <bertrand> |
Component: | Current packages | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | bertrand |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
USE="-default-compiler-rt -default-libcxx"
USE="-default-compiler-rt default-libcxx" USE="default-compiler-rt -default-libcxx" USE="default-compiler-rt default-libcxx" |
Description
Bertrand Jacquin
2016-09-25 01:21:02 UTC
Created attachment 447796 [details]
USE="-default-compiler-rt -default-libcxx"
Created attachment 447798 [details]
USE="-default-compiler-rt default-libcxx"
Created attachment 447800 [details]
USE="default-compiler-rt -default-libcxx"
Created attachment 447802 [details]
USE="default-compiler-rt default-libcxx"
I assume that gcc was used to compile poppler. When llvm is compiled with USE="default_libcxx" clang uses its own C++ standard library, which is incompatible with the one used by gcc. So with this USE setting you run into problems similar to those when upgrading to gcc-5 if you don't rebuild all C++ code using clang. compiler_rt is llvm's analog of libgcc. gcc's libstd++ is probably linked against libgcc. I'm not sure it is supported at all to mix them. So it would be more interesting to see link failures if poppler is compiled with the same compiler as your test program. (In reply to Felix Janda from comment #5) > I assume that gcc was used to compile poppler. > > When llvm is compiled with USE="default_libcxx" clang uses its own C++ > standard library, which is incompatible with the one used by gcc. So > with this USE setting you run into problems similar to those when > upgrading to gcc-5 if you don't rebuild all C++ code using clang. > > compiler_rt is llvm's analog of libgcc. gcc's libstd++ is probably > linked against libgcc. I'm not sure it is supported at all to mix them. > > So it would be more interesting to see link failures if poppler is > compiled with the same compiler as your test program. I confirm, if I build poppler with a clang compiled with USE="default_libcxx", then gcc can't build my test program and clang can. I believe we are good here. Thanks! |