Post

Replies

Boosts

Views

Activity

Reply to Code signing of dylib for use under iOS
Hi Quinn (@eskimo), We're having similar issues right now. We have a bunch of C shared libraries that depend on each other that we'd like to include as a framework into an iOS application. They are all compiled to .dylib and we've created a universal framework that has all the libraries set as "Link Binary With Libraries". This however was not enough to add the .dylibs into the framework. We also had to add a "Copy Bundle Resources Phase" where we also listed the libraries. This now creates a .framework that contains the .dylibs and the main framework executable links to the dylibs so they are automatically loaded. This is where the issue starts however. It seems that something is going wrong at codesigning because we get the following error when the framework is loading: '$PATH_TO_DYLIB_HERE' not valid for use in process: mapped file has no cdhash, completely unsigned? I was under the impression that if I add a framework to the Framework Libraries and Embedded Content step and mark it as Embed & Sign then it and all its contents would be codesigned. To me it seems as if the .dylibs inside the framework are simply ignored for codesigning. Is there any automatic process or setting that I'm missing here? Or is the general case just that we need a framework for each dylib (which would be extremely annoying as we have about 20 of them) because the code signing system can't handle signing files inside frameworks?
Mar ’23