[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: libobjc2 cmake C++ library issue
From: |
David Chisnall |
Subject: |
Re: libobjc2 cmake C++ library issue |
Date: |
Tue, 21 May 2013 15:58:59 +0100 |
On 21 May 2013, at 14:27, Maxthon Chan <address@hidden> wrote:
> Well somehow I managed to compiled it with CXXFLAGS="-std=c++11
> -stdlib=libc++" and linked libobjc (with Objective-C++ support) against
> libc++ (LLVM's C++11 standard library), that is I made a huge hump of
> libraries, libobjc2, libdispatch and LLVM's libc++ all linked together.
On what platform? (Oh, and before you explain to me what libc++ is, you might
want to look in the CREDITS file for libc++).
> I always use libobjc2 in place of libBlocksRuntime
There is no longer any reason to do this. libBlocksRuntime now uses weak
symbols for all of the things that libobjc2 wants to override, and so they can
coexist.
> hence libobjc2 and libdispatch always link against each other, and now
> libobjc2 links against libc++ too
libobjc should never link against libc++. Either libobjc should link libsupc++
/ libcxxrt, or libobjcxx should link libstdc++ / libc++.
> and since libc++ linked against libdispatch,
libc++ should not link against libdispatch either. It doesn't depend on
libdispatch in any way.
> that dragged libobjc2 in, and by doing that, clang is involved too by linking
> against libc++ and using C++11 features, so does lldb. What a mess...
What a mess indeed. Don't do that.
David
-- Sent from my Difference Engine