sbooth / SFBAudioEngine

A powerhouse of audio functionality for macOS and iOS
https://sbooth.github.io/SFBAudioEngine/
MIT License
552 stars 87 forks source link

SimplePlayer Crashes on iOS #196

Closed olilarkin closed 2 years ago

olilarkin commented 3 years ago

Followed instructions, latest iOS, latest macOS/Xcode 12, enabled code signing on main app

dyld: Library not loaded: @rpath/dumb.framework/dumb Referenced from: /private/var/containers/Bundle/Application/82D0C192-59D3-4813-9A5E-2175734F260B/SimplePlayer-iOS.app/Frameworks/SFBAudioEngine.framework/SFBAudioEngine Reason: no suitable image found. Did find: /private/var/containers/Bundle/Application/82D0C192-59D3-4813-9A5E-2175734F260B/SimplePlayer-iOS.app/Frameworks/SFBAudioEngine.framework/Frameworks/dumb.framework/dumb: code signature in (/private/var/containers/Bundle/Application/82D0C192-59D3-4813-9A5E-2175734F260B/SimplePlayer-iOS.app/Frameworks/SFBAudioEngine.framework/Frameworks/dumb.framework/dumb) not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed. dyld: launch, loading dependent libraries DYLD_LIBRARY_PATH=/usr/lib/system/introspection DYLD_INSERT_LIBRARIES=/Developer/usr/lib/libBacktraceRecording.dylib:/Developer/usr/lib/libMainThreadChecker.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib

sbooth commented 3 years ago

I wonder if it's worth repackaging SFBAudioEngine.framework for iOS as a non-umbrella framework. It would be a bit more work for developers (linking to multiple frameworks instead of one) but I think umbrella frameworks still aren't officially supported on iOS.

andykent commented 3 years ago

I also just hit what I think is the same issue. Is there any way to get the framework working on iOS?

dyld: Library not loaded: @rpath/dumb.framework/dumb
  Referenced from: /private/var/containers/Bundle/Application/11B50186-95C9-4AAC-AD56-5EE5BA02865A/ExampleApp.app/Frameworks/SFBAudioEngine.framework/SFBAudioEngine
  Reason: no suitable image found.  Did find:
    /private/var/containers/Bundle/Application/11B50186-95C9-4AAC-AD56-5EE5BA02865A/ExampleApp.app/Frameworks/SFBAudioEngine.framework/Frameworks/dumb.framework/dumb: code signature in (/private/var/containers/Bundle/Application/11B50186-95C9-4AAC-AD56-5EE5BA02865A/ExampleApp.app/Frameworks/SFBAudioEngine.framework/Frameworks/dumb.framework/dumb) not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.
dyld: launch, loading dependent libraries
DYLD_LIBRARY_PATH=/usr/lib/system/introspection
DYLD_INSERT_LIBRARIES=/Developer/usr/lib/libBacktraceRecording.dylib:/Developer/usr/lib/libMainThreadChecker.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib
loisgonzalez commented 3 years ago

Same error with SimplePalyer on iOS:

dyld: Library not loaded: @rpath/SFBAudioEngine.framework/SFBAudioEngine Referenced from: /private/var/containers/Bundle/Application/6E928A8D-3547-4DD0-9169-4B2002D9A6AC/SimplePlayer-iOS.app/SimplePlayer-iOS Reason: image not found dyld: launch, loading dependent libraries DYLD_LIBRARY_PATH=/usr/lib/system/introspection

Scarle-t commented 3 years ago

I can share some experience about this issue, hope it helps. I worked on a flac music streamer app a while back and this error popped up trying for a release build What I did to get it working was (not sure if it is still work tho) :

go into every single one of the audio libraries' xcode project file and manually enable "Automatically manage signing" and assign a team, then follow the instruction to build the framework

iirc I also imported those audio libraries framework file (something like FLAC.framework, oups.framework etc) to the project I was working on, not sure which one did the trick.

sbooth commented 2 years ago

Related to #200

sbooth commented 2 years ago

This should be fixed in #230. Any testing to verify the new build process would be appreciated.