cateof
cateof

Reputation: 6758

64bit support for static libraries in iOS

According to Apple after June 1st, apps that are not built for 64-bit will be automatically rejected, when uploaded to app store. My app is using "Standard architectures" and BaseSDK is 8.0. With the first glance this means that the app is OK with these rules, however what happens when external libraries are not 64 bit? For example

$ lipo -info libssl.a 
Architectures in the fat file: libssl.a are: armv6 armv7 

This libssl.a files seems to be compiled for 32bit. However I do need it in my app, therefore it is linked. My app is at the AppStore for a long time and it was first built with 32 bit. Now with "Standard architectures" it compiles with 32 and 64 bit support.

Is this OK, or do I need 64bit version of my static libraries as well?

Upvotes: 0

Views: 287

Answers (2)

Daij-Djan
Daij-Djan

Reputation: 50099

EVERYTHING needs to be 64 bit for the final app to be 64 bit

EVERYTHING means

  • the app itself
  • all linked static libraries
  • all linked dynamic libraries
  • all linked frameworks (apple's usually are!)
  • all included 'extensions' (which are apps of its own)

Upvotes: 1

Zhang Zhan
Zhang Zhan

Reputation: 905

Yes.

If your project is 64 bit while the external libraries are 32 bit, your project won't even compile.

Upvotes: 0

Related Questions