[PATCH] D31272: Do not pass an explicit reexported symbol list when building libc++ dylib if also defining new/delete

Mehdi AMINI via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Mar 27 22:11:59 PDT 2017


mehdi_amini added a comment.

Strange. So installing the command line tools is not enough. It has to be that CMAKE_OSX_SYSROOT is only defined on Apple internal install maybe?

Anyway, if you're exporting through the ABI list and have LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS I expect the link to fail. You're not observing this?

I have this error:

  ld: requested re-export symbol operator new(unsigned long) is not from a dylib, but from lib/CMakeFiles/cxx_objects.dir/__/src/new.cpp.o
   file 'lib/CMakeFiles/cxx_objects.dir/__/src/new.cpp.o' for architecture x86_64

I can reproduce with: `cmake -GNinja -DCMAKE_OSX_SYSROOT="" path/to/libcxx`


https://reviews.llvm.org/D31272





More information about the cfe-commits mailing list