[Bf-committers] Help on linking added lib on XCode

Rafael Campos rafaelcdn at gmail.com
Fri Jul 26 18:47:15 CEST 2013

Just to document the solution that Brecht helped me with:

Error 1: Cannot use typeid with -fno-rtti
It was just a matter of editing the corresponding CMakeLists.txt to remove
the flags -fno-rtti, since OpenVDB uses typeid.

Errors 2 and on: No member named 'punned_cast' in namespace 'tbb::internal'
OpenImageIO has its own version of tbb that gets included.
This version of tbb, however, is not complete - probably a subset of what
OIIO needs. But since the preprocessor definition symbols are the same,
this version got included, and the full tbb dependency I added didn't,
hence the missing symbols series of errors. The fix was to change the
include order in the corresponding CMakeLists.txt file, causing my tbb
dependency to be included first.

These changes will be committed later today.


On Sat, Jul 20, 2013 at 9:45 AM, Rafael Campos <rafaelcdn at gmail.com> wrote:

> Hi all,
> As part of SoC, I had to add the intel tbb library to Blender (tbb files
> not committed), and it compiled and ran fine on Windows. Now, I'm trying to
> setup the same project on Mac, and I keep getting these linker errors.
> Trunk builds ok.
> I've added a tbb folder, with include and lib dirs, to cmake's LIBDIR,
> which is lib/darwin-9.x.universal/ here.
> On XCode, in Library Search Paths, I currently have
> /Users/rafael/Projects/blender/blenderSVN/blender/../lib/darwin-9.x.universal/tbb/lib
> /Users/rafael/Projects/blender/blenderSVN/blender/../lib/darwin-9.x.universal/tbb/lib/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
> and in Other Linker Flags, among many listed, I have
> -ltbb
> -ltbb_debug
> On Windows, the libraries were tbb.dll and tbb_debug.dll, so I kept these
> names on CmakeLists.txt, but the actual files now are libtbb.dylib and
> libtbb_debug.dylib - not sure if the preceding lib makes a difference here.
> In all cases, not statically linked, but it did work on Windows. :(
> The errors I'm getting are below - there are 20, but same error messages.
> cycles_kernel_osl Group
> Semantic Issue Group
> /Users/rafael/Projects/blender/blenderSVN/blender/extern/openvdb/internal/openvdb/Types.h:166:72:
> Cannot use typeid with -fno-rtti
> /Users/rafael/Projects/blender/blenderSVN/lib/darwin-9.x.universal/tbb/include/tbb/aligned_space.h:47:34:
> No member named 'punned_cast' in namespace 'tbb::internal'
> /Users/rafael/Projects/blender/blenderSVN/lib/darwin-9.x.universal/tbb/include/tbb/internal/_concurrent_unordered_impl.h:820:37:
> Use of undeclared identifier '__TBB_ReverseBits'
> And I suspect I might be missing something obvious. Any ideas?
> Thanks a lot,
> Rafael.

More information about the Bf-committers mailing list