6

I'm trying to create XCFramework, which has inside several dependencies imported with SPM. I set BUILD_LIBRARIES_FOR_DISRTIBUTION to YES for target.

But this warning inside of XCFramework Project next each line import <ModuleName> makes me curious: is there something wrong there?

Warning:

Module 'ModuleName' was not compiled with library evolution support; using it means binary compatibility for 'XCFrameworkName' can't be guaranteed

Note: Archiving and creating xcframework succeeded.

birdy
  • 943
  • 13
  • 25
  • FWIW, to explain the warning message, `XCFramework` is linking to `ModuleName` but `ModuleName` isn't exporting the .interface linker file that is needed to guarantee ABI compat (because it doesn't have BUILD_LIBRARIES_FOR_DISTRIBUTION set). The risks of doing that are unclear to me though, I am looking for that information still. My question is, is there a risk that the library will link and potentially crash at runtime due to ABI incompat? – Garvan Keeley Feb 19 '20 at 19:56
  • Did you solved that? – Kien Vu Apr 13 '20 at 10:36
  • 1
    hi @tdtkien, my temporary solution was using source code of framework-project instead of frameworks. – birdy Apr 14 '20 at 10:55
  • I couldn't solve that but new binary has been accepted by Apple yesterday. So I think this is not really a serious bug – Kien Vu Apr 15 '20 at 13:30

0 Answers0