megapihar
megapihar

Reputation: 153

After updating iOS, all applications using the framework stopped running on the device, but they run on the simulator

error:
{ dyld: Library not loaded: @rpath/Realm.framework/Realm Referenced from: /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Favorite Places Reason: no suitable image found. Did find: /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: code signature invalid for '/private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm'

    /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: stat() failed with errno=25
    /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: code signature invalid for '/private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm'

    /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: stat() failed with errno=1
    /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: code signature invalid for '/private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm'

    /private/var/containers/Bundle/Application/43190AF8-F437-4B8F-9827-DDEA599AF618/Favorite Places.app/Frameworks/Realm.framework/Realm: stat() failed with errno=1
(lldb) 
}

Upvotes: 15

Views: 5262

Answers (7)

Alberto M
Alberto M

Reputation: 1760

I had enabled the "Hardened Runtime" for a MacOS app, but didn't enable "Disable Library Validation", hence I couldn't load external libraries.

enter image description here

Upvotes: 0

mark
mark

Reputation: 861

Same problem. Solved just by recreating the profile.

Upvotes: 0

XtremeDevX
XtremeDevX

Reputation: 1792

I have been facing the same problem... It got fixed by adding:

In you podfile:

use_modular_headers!

instead of

use_frameworks!

Good luck! I hope this works for you!

Upvotes: 0

Julia Pak
Julia Pak

Reputation: 703

Welp I faced a very similar problem. Did not need to pay my developer account renewal. Yup I'm currently on a free account. Updating to 13.4 and xcode 11.4 still was showing the same issue. So this is what I did:

-Deleted app off phone, cleaned build and removed old profiles(found in

~/Library/MobileDevice/Provisioning Profiles)

-Deleted everything in "iOS DeviceSupport" file found in

~/Library/Developer

-Cleaned derived data.

-In keychain I deleted all my certificates.

Also removed my account and re-added it upon re-starting xcode (IMO this might have done nothing, but worth adding). Restarted phone and xcode. App is up and running on my phone now! No paid developer account! Oh and podfile...

platform :ios, '13.2'

target 'YourApp' do
  use_frameworks!
  pod 'Mapbox-iOS-SDK', '~> 5.7.0'

 
 target 'WalkBuddyTests' do
    inherit! :search_paths
    #pods for testing
end
end

Upvotes: 2

Alice Ma
Alice Ma

Reputation: 1

Comment use_frameworks, then use use_modular_headers! instead.

#use_frameworks!

use_modular_headers!

# Pods for NoteWithFireStore

pod 'BoringSSL-GRPC'

pod 'Firebase/Analytics'

pod 'Firebase/Firestore'

pod 'Firebase/Storage'

pod 'BoringSSL-GRPC', '= 0.0.3', :modular_headers => false

pod 'gRPC-Core', '= 1.21.0', :modular_headers => false

tried on Xcode 11.4 and iOS 13.4 with Firebase and free develop account. This combination fix the issue

Upvotes: 0

Colin Williams
Colin Williams

Reputation: 1

Removing use_frameworks. It will break your Firebase pods. For projects that utilize Firebase pods, your solutions consist of the following..

  1. Downgrade your iOS device
  2. Create & pay for an Apple Developer Program
  3. Use the simulator and wait for future iOS updates that will hopefully once again allow free dev accounts to use Frameworks again..

This is very often issue which needs to be eliminated by official sources

Upvotes: 0

NateMS
NateMS

Reputation: 384

I had the same issue with realm, it would work on the simulator but crash instantly on the actual devices. It seems when updating to iOS 13.3.1 Apple changed the behaviour of free apple developer accounts, no longer allowing them to use embedded frameworks.

The solution is to remove the use_frameworks! in your Podfile and replace it with use_modular_headers!

e.g.

target 'your_project_name' do
    use_modular_headers!
    pod 'RealmSwift'
end

This will include them as static libraries instead. I stumbled upon the solution in this GitHub issue: https://github.com/Alamofire/Alamofire/issues/3051

Upvotes: 25

Related Questions