Hi, I could compile ghdl with llvm backend on Fedora 20. Fedora 20 has no libc++.so file, so I made a libc++.so symlink pointing to libstdc++.so, it worked. Could it be that on some distributions, the right linker flag is -lstdc++ instead of -lc++?
Endre On Mon, Mar 2, 2015 at 12:17 PM, Endre Bak <[email protected]> wrote: > Hi, > > I didn't find anything useful with google search. I opened a bug for > Ubuntu. > > Endre > > On Mon, Mar 2, 2015 at 7:52 AM, Tristan Gingold <[email protected]> wrote: > >> On 01/03/15 17:07, Endre Bak wrote: >> >>> Hi, >>> >>> I try to build GHDL with LLVM 3.5 on Ubuntu 14.04.2 LTS. >>> >>> I have interesting linker errors like: >>> >>> /usr/lib/llvm-3.5/lib/libLLVMSupport.a(Errno.o): In function >>> `llvm::sys::StrError(int)': >>> (.text._ZN4llvm3sys8StrErrorEi+0x59): undefined reference to >>> `std::string::assign(char const*, unsigned long)' >>> >>> Seems like the LLVM lib cannot link the Standard C++ lib. >>> The missed symbol even doesn't exist in libc++, although there is a >>> similar one: >>> >>> $ objdump -TC /usr/lib/x86_64-linux-gnu/libc++.so.1.0|grep -F >>> 'assign(char const*, unsigned long)' >>> 00000000000bbf9e w DF .text00000000000000a2 Base >>> std::__1::basic_string<char, std::__1::char_traits<char>, >>> std::__1::allocator<char> >::assign(char const*, unsigned long) >>> >>> In the header //usr/include/c++/v1/string/ the string type is typedef-ed >>> from basic_string: >>> typedef basic_string<char> string; >>> >>> I guess it is an Ubuntu packaging issue, the LLVM libs were compiled >>> with a Standard C++ implementation which differs from the libc++ Ubuntu >>> package. >>> >> >> Indeed. Did you search the web for that issue ? >> >> Tristan. >> >> >> _______________________________________________ >> Ghdl-discuss mailing list >> [email protected] >> https://mail.gna.org/listinfo/ghdl-discuss >> > >
_______________________________________________ Ghdl-discuss mailing list [email protected] https://mail.gna.org/listinfo/ghdl-discuss
