After installing Xcode 10 yesterday, I started migrating some libraries to Swift
4.2. While most migrations were painless, one failed, since it depends on
SwiftyDropbox which doesn’t support Swift 4.2.
SwiftyDropbox to the library makes it compile, but the code then crashes
at runtime instead, with the following error:
dyld: Symbol not found: _$S8Dispatch0A3QoSV0B6SClassO7utilityyA2EmFWC Referenced from: /Users/admin/Library/Developer/CoreSimulator/Devices/69F0BD96-7BB8-4B29-BE96-A423BA2FBD3C/data/Containers/Bundle/Application/CAAB9A58-4F89-4C85-BCDA-8ECF22D11731/VandelayExample.app/Frameworks/Alamofire.framework/Alamofire Expected in: /Users/admin/Library/Developer/CoreSimulator/Devices/69F0BD96-7BB8-4B29-BE96-A423BA2FBD3C/data/Containers/Bundle/Application/CAAB9A58-4F89-4C85-BCDA-8ECF22D11731/VandelayExample.app/Frameworks/libswiftDispatch.dylib in /Users/admin/Library/Developer/CoreSimulator/Devices/69F0BD96-7BB8-4B29-BE96-A423BA2FBD3C/data/Containers/Bundle/Application/CAAB9A58-4F89-4C85-BCDA-8ECF22D11731/VandelayExample.app/Frameworks/Alamofire.framework/Alamofire (lldb)
If we look at this error, we can see that it’s not caused by
rather that is uses an old version of Alamofire.
4.5.0 to be exact.
You can solve this by adding a later version of Alamofire to your
Podfile. So instead of having this in my
github "dropbox/SwiftyDropbox" ~> 4.6.0
I now have this:
github "dropbox/SwiftyDropbox" ~> 4.6.0 github "Alamofire/Alamofire" ~> 4.7.0
This is just a temporary fix until
SwiftyDropbox updates its Alamofire dependency,
which hopefully will not take too long.