0

I'm upgrading to the new V2 Dropbox API, following the Carthage install instructions. It compiles fine but when it starts to run, it fails with dyld __abort_with_payload.

A similar question indicated to put the framework into Embedded Binaries instead of `Linked Frameworks and Libraries'. I tried this and it worked, sort of.

I then fixed what I thought was a typo in a path, removed it from the Embedded Binaries list and it still worked, but for this target only. Other targets configured in the exact same manner AFAICT still fail.

Is there a subtle configuration I may have missed, or may have automatically been added when I used Embedded Binaries, that may be left over even though it is no longer in use?

I don't think the Embedded Binaries should be needed to link a framework, and it is not documented to be necessary.

Edit: [adding Obj-C as this is likely a linking problem]

The framework is a dynamic framework, identified using the instructions from this post. I added the framework to the Embedded Binaries making the app run. However, if I take it out of Embedded Binaries, it still runs, but didn't previously with the same configuration AFAIK. Something subtle I don't understand has been changed.

Edit 2:

I initially used Embedded Binaries as it seemed to work and not have the dyld failure. However, when I built as an archive and validated with the App Store, it failed to validate with several failures: Unsupported Architectures, Invalid Segment Alignment, LC_ENCRYPTION_INFO load command is either missing or invalid

Community
  • 1
  • 1
Jim Leask
  • 6,159
  • 5
  • 21
  • 31
  • This can be hard to debug, unfortunately. I recommend first removing the installed framework entirely and working through [the instructions](https://github.com/dropbox/dropbox-sdk-obj-c#carthage) again, just in case you missed a step there. If you still see the issue, please share a sample project that exhibits the problem so we can investigate: https://www.dropbox.com/developers/contact – Greg May 03 '17 at 19:38
  • I don't know that I can make a small project that has this problem. The sample app works, and this one seems to intermittently do it. The install docs sometimes say to use Embedded Binaries, and in other places the Frameworks and Libraries. Should it always be Embedded Binaries by chance - possibly a documentation error? – Jim Leask May 04 '17 at 17:21
  • The team just checked on this and it looks like they did find a discrepancy in the documentation. They've updated it accordingly: https://github.com/dropbox/dropbox-sdk-obj-c/commit/c9336a47ec22481ced9a3161c07cfa594cbdcdbe – Greg May 04 '17 at 23:07

0 Answers0