Hi,
I built Boost with the Darwin toolset, so that uses GCC (how can I check
which linker is being used by the Boost build system?). My application
project is linking using libc++.
Assuming I've got a linker mismatch, how can I either get Boost to link
using libc++, or get XCode to link using stdlibc?
Best wishes.
Tim Burgess
-----Original Message-----
From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Louis Dionne
Sent: 26 March 2013 15:05
To: boost@lists.boost.org
Subject: Re: [boost] Serialise on Mac OSX 10.8, XCode and GCC
Tim Burgess
Hi,
I have an XCode c++ project that uses the static serialisation library (as well as FileSystem, IOStream and System). The project started out on XCode 3.6 on Mac OSX 10.6, where it successfully built and ran using Boost 1_49_0, built against Apple's 10.6 SDK.
[...] Hi, This is really just a guess, but: Did you build Boost using clang with libc++? If so, and if you are building your project with gcc and stdlibc++, that could be the source of the problem. IIRC, libc++ broke the ABI compatibility with stdlibc++. To turn potential runtime errors into link-time errors, they used inline namespaces. For example, symbols inside the std namespace with libc++ are of the form std::__1::symbol while with stdlibc++ they are of the form std::symbol When linking with a library built with a different runtime, the linker will fail to find the symbols, turning a nasty runtime error into a link failure. If I were you, I would look at the symbols exported by Boost. If they don't match those referenced by your project, that could be it. Best of luck, Louis _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost