Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert xcode 32 bit app into 64 bit xcode app

I have updated xcode as 6.1 version with ios 8.1.I want to make settings in build settings of project. What changes should be made in architecture and valid architecture of 32 bit xcode project to convert it into 64 bit support.

Earlier,32 bit xcode project has settings as follows: architectures:Standard Architecture(armv7 arm64) valid architectures:armv64 armv7 armv7s

Now,when I changed the architecture setting as... architectures:Standard Architectures (including 64-bit)...as written in developer.apple.com. valid architectures:armv64 armv7 armv7s

So,the application runs on ios device with ios 8.1.3 version

I want to know that,when I write in
valid architectures:arm64 armv7 armv7s,error is displayed in flurry sdk which I have used for ios.4.2.3

but ,when I write .. valid architectures:armv64 armv7 armv7s,then no error displayed,application runs fine.

I know,I will hav to update all my libraries to 64 bit support like flurry sdk,etc.

But,please anyone tell me detail in steps as what should be done to convert 32 bit xcode app into 64 bit app.

And,how one can know the architecture of the libraries used in the project using terminal command.

Thanks..

like image 627
Queries Avatar asked Feb 05 '15 11:02

Queries


People also ask

Does iOS 12 support 32-bit apps?

With the introduction of iOS 11 in 2017 Apple stopped supporting 32-bit apps on iOS.

Is iOS 32 or 64-bit?

iOS and the iPhone hardware have been fully 64-bit since the days of the iPhone 5s.

What is a difference between 32-bit and 64-bit?

A 32-bit system has a limit of 32 bit Windows 3.2 GB of RAM. The limit in its addressable space doesn't allow you to use the entire physical memory space of 4GB. A 64-bit system enables its users to store up to 17 Billion GB of RAM.


2 Answers

It's arm64 not armv64

enter image description here

To explain these,

Architectures: First Step is to set the Architecture to Standard architectures (Apple recommended). Which means build both 32 and 64 Bit architectures. This would change your iOS Deployment Target to iOS5.1.1. With a confirmation from you.

Valid Architectures : Specify the architectures you want to build:
armv7 and armv7s are for 32 bit devices.
arm64 is for 64 bit devices

Build Active Architecture Only : This is to specify, whether, build all the valid architectures or build only for the target specified. So for Debug, set is as Yes, hence, it builds only the current architecture, (32 bit, if iPhone 5 64bit if iPhone 5s). And For Release as No. (Build all architecture for Release).

Apple's recommendation on 64 bit conversion

like image 125
Maheswaran Ravisankar Avatar answered Nov 02 '22 06:11

Maheswaran Ravisankar


  1. Open your app project in Xcode (version 5.0.1 or later).
  2. Update the project settings to support iOS version 5.1.1 or later.
  3. In the Build Settings section of the project settings set Standard architectures (arm64) for the Architectures
  4. The previous changes will raise some compiler warnings and errors in your project.
  5. Test the project on 64-bit devices apart from the iOS Simulator.
  6. Take advantage of Instruments to check your application’s memory usage.
like image 37
Balaji Kondalrayal Avatar answered Nov 02 '22 04:11

Balaji Kondalrayal