Appcelerator Blog

The Leading Resource for All Things Mobile

Titanium SDK 3.5.0 GA Now Available with 64-bit iOS support

17 Flares 17 Flares ×

We’re pleased to announce the GA version of Titanium SDK that offers support for iOS 64-bit builds. A reminder that starting February 1st 2015, Apple will require that all new App Store submissions be compiled using the iOS 8 SDK, and support 64-bit architectures. Existing applications have until June 1st, 2015 to complete the transition.

Please read our release notes for a full list of fixes and improvements. There are no CLI, Studio or Alloy updates with this version, so you may continue to use your existing installation.

This build contains the following changes:

  • New, 64-bit build of JavaScript core, now 80% smaller, and based on a much newer codebase.
  • Updated 64-bit supporting libraries
  • 64-bit clean Titanium iOS SDK
  • Updated 64-bit modules
  • 64-bit module and project templates

To convert your application, just rebuild using the 3.5.0 SDK. In particular, ALL iOS modules will need to be 64-bit compatible. You can search for modules already updated to 64-bit on gitt.io.

Downloading Titanium 3.5.0

For new users, download Titanium 3.5.0 by clicking here.

For existing Titanium & Appcelerator Studio users, you will be prompted to update automatically on the next restart. You can also manually check for updates by selecting the “Check for Titanium SDK Updates” or “Check for Appcelerator Updates” from the “Help” menu within Studio.

17 Flares Twitter 0 Facebook 0 Google+ 0 LinkedIn 17 Email -- 17 Flares ×

33 Comments

  1. Hans

    I’m missing the iOS6 support, which cannot even be solved by editing the TiApp.xml with the 6.1 like in 3.4.x. Is there a possibility to resolve the unofficial support?

    • Ingo Muschenetz

      iOS 6 support is completely removed in 3.5.0. We refactored a number of classes to take advantage of iOS 7+ functionality. You will need to continue using 3.4.0 or earlier if you need iOS 6 support.

      • Frank

        Then what will happen with older devices such as the ipod touch 4g?, will we be able to submit our builds to itunes using 3.4.0 after February 1st?

    • Yeah Hans, I’m missing that too. For me its an advantage give support for older versions. New concepts of reuse old technology for other purposes are becoming more relevant. Its nice reach new and different goals with that.

  2. Donovan

    Great update, was easy to get my app working. Just have one problem, I can’t get it to build to the simulator. Works perfect building to device but always fails when trying to build to the simulator with this error…

    [INFO] : Initiating Xcode pre-compile phase
    [INFO] : Processing JavaScript files
    [INFO] : Processing Titanium namespace resources
    [INFO] : Invoking xcodebuild
    [ERROR] : ** BUILD FAILED **
    [ERROR] : The following build commands failed:
    [ERROR] : Ld build/AppName.build/Debug-iphonesimulator/AppName-universal.build/Objects-normal/x86_64/AppName normal x86_64
    [ERROR] : (1 failure)

    • Jared

      Did you ever find a solution to this error? I’ve been trying to update a couple modules to the x64 architecture today, and even though lipo -info is returning all 4 architectures, I keep getting this.

  3. Rainer Schleevoigt

    Hi Ingo,
    I am pleased that the version now in time before February 1 is ready. The most of “my” modules I have successful recompiled. By using of two modules I see problems:

    1. socialshare by viezel: only on iPad the popover with social share content will not open (issue with new popover architecture?)
    2. ti.carousel by pegli: since SDK350GA I can only swipe on der border of main view, the main view self is insensibele by swiping (issue event bubbling?)

    Do you have hints, where I can looking for fixing?

    Best regards

    Rainer

    • Ingo Muschenetz

      @Ranier, I would contact the module authors and we’ll be happy to help them with upgrading their modules as necessary.

  4. Kosso

    Re: Updating modules to 64-bit : Could you provide a bit more detailed instruction (with screenshots?) of exactly where in the XCode build settings to set “all architectures to $(ARCHS_STANDARD)” please?

    I have tried doing this where it appears I should, but when I test the lib with ‘xcrun lipo -info ..’ it only returns ‘armv7 i386’.

    Thanks.

    • Ingo Muschenetz

      If you open up the Xcode project, it likely will prompt you automatically to fix this. In other cases, where it specifies the architectures, you can just delete the settings. Alternately, you could edit the pbxproj like we have done in other modules. See here for an example.

      • kosso

        I tried everything, as well as all this. But the old modules files and probably the XCode project itself were just too old to work with these instructions.

        The only way I could get it to work was to create a brand new module project and port the classes over. Then it built fine with and included the correct architectures.

      • Moshe Marciano

        Ingo, as a module author who has developers waiting for the 64 bit version, please help:

        https://jira.appcelerator.org/browse/TC-5218

    • kosso

      OK. I have found a way to deal with this issue : I created a new module project using Ti Studio and the latest 3.5.0.GA SDK, then ported over the classes from the old version of the module. That seemed to have everything set up for the new architectures.

      I have a feeling that other module devs might come across his issue, as they try to update relatively old modules (containing old files with old settings), since the instructions published by Appcelerator just don’t seem to work on old modules.

      hth

      • Moshe Marciano

        I can confirm old modules won’t build, I think even the build script from the 3.5.0.GA is sending min-ios=4.3 which xcode drops an error for:

        xcode error: invalid deployment target for -stdlib=libc++ (requires ios 5.0 or later)

        I had to add min_ver = 7.0 in line 1164 of builder.py to get this to even compile and now I am getting:

        [DEBUG] Unable to load simulator framework. Error: (null)
        [DEBUG] Failed to find class DTiPhoneSimulatorSystemRoot at runtime.

        and when trying xcrun lipo -info .. I get only i386
        even though I followed the instructions to the letter…

        to top it all, my demo app which uses my already compiled module version which runs great with SDK 3.4.1.GA will crash if built with 3.5.0.GA

        there seems to be some more rough edges before this is ready..

        • Jon Alter

          Hey Moshe – I have not been able to reproduce the issues you are seeing regarding building a module with 3.5.0.GA. Would you be able to file a jira ticket, include as much detail as possible so that we can reproduce the issue on this end, post the link to it here, and we can dig into.

          • Moshe Marciano

            Hi John,

            I did some more research and figure out a way to make it build, I was apperantly using the “old” way of building titanium modules.

            but still, an app that builds and runs fine with 3.4.1.GA will crash upon win.add(obj); with a memory alloc issue(!)

            I am not sure what changed with 3.5.0.GA in that regard and not sure where to start looking as the problem seems to be how titanium and Google SDK work together.

            as requested I documented everything in a JIRA ticket and added a demo project

            https://jira.appcelerator.org/browse/TC-5218

            as my customers who build apps using my module are waiting for the 64-bit build can you please make sure this is handled promptly?

            thanks

  5. Donovan

    When ever I try and build a module to 64bit, It works but I don’t have all the correct architectures. All I get is armv7 i386 arm64 I’m missing x86_64.

    I’m using the newest version of Xcode and can’t figure out why this is happening.

    • Jon Alter

      Donovan – You may have an old version of the build.py that is not building for x86_64. I recommend updating the build.py to the latest version shipped with 3.5.0.GA. You can create a new module and copy over the build.py to your old module. Let us know how it goes.

      • Moshe Marciano

        this is exactly what I did (see comment above) and it worked.

        John, please take a look at my comment too, it includes the JIRA ticket you asked me to open. can you comment on that?

      • Alex Peckham

        Since updating to 3.5.0 GA I am seeing “Received memory warning” in the console quite regularly. I never saw this before. App seems OK but worried there is a leak or similar now. How do I go about debugging and finding the cause of this message?

        • Ingo Muschenetz

          @Alex, you should be able to use Xcode’s “Instruments” to profile your application’s memory usage.

  6. Vincent

    Hi,

    I just compiled my app using the new SDK and the size of my app increased from 27Mo to 65Mo. Is it normal?

    Thanks for your answer.

    • Vincent

      PS: I compiled for iOS with dist-adhoc mode.

  7. jayesh

    i run ./build.py to build module it successfully build module.

    But if i use Below command

    “/Users/username/Library/Application Support/Titanium/mobilesdk/osx/3.5.0.GA/tit
    anium.py” run

    Error occurs like below

    [INFO] Minimum iOS version: 4.3 Linked iOS Version 8.0

    [ERROR] clang: error: invalid deployment target for -stdlib=libc++ (requires iOS 5.0 or later)
    [ERROR]

    [ERROR] Error: Traceback (most recent call last):
    [DEBUG] File “/Users/username/Library/Application Support/Titanium/mobilesdk/osx/3.5.0.GA/iphone/builder.py”, line 1379, in ma
    in
    [DEBUG] execute_xcode(“iphonesimulator%s” % link_version,[“GCC_PREPROCESSOR_DEFINITIONS=__LOG__ID__=%s DEPLOYTYPE=development TI_
    DEVELOPMENT=1 DEBUG=1 TI_VERSION=%s %s %s” % (log_id,sdk_version,debugstr,kroll_coverage)],False)
    [DEBUG] File “/Users//Library/Application Support/Titanium/mobilesdk/osx/3.5.0.GA/iphone/builder.py”, line 1286, in ex
    ecute_xcode
    [DEBUG] output = run.run(args,False,False,o)
    [DEBUG] File “/Use

  8. Frank

    So what are the options for older devices? can we build the ipa with xcode using the 3.4.0 SDK with both 32 and 64 bit targets?

    since itunes won’t accept any builds that are not 64bit and you guys dropped support from ios6 in your only compatible sdk, can I get some information on this?

    Thank you

  9. Shawn

    I followed the instructions here https://wiki.appcelerator.org/display/guides2/iOS+Module+64-bit+Support to upgrade my module to support 64 bit. However, when I run xcrun lipo -info build/lib..a, I got Architectures in the fat file: build/lib.your_module_here.a are: armv7 i386. No x86_64 arm64. What am I missing?

    I’m running latest xcode, titanium studio and sdk 3.5.0. When changing architectures in xcode, I have only one option: $(ARCHS_STANDARD), armv7 arm64. I don’t have 64-bit simulators.

    Also, I created a new module as instructed, trying to get the architectures field in manifest file. But there is no architectures field. Is the instruction right about this? How do I find out what architectures my android module supports?

    • Bradleycorn

      Same question about architectures in the manifest for android modules. How do we know what architectures to put in there? Creating a new module does NOT put an architectures entry in the manifest as the release notes claim.

  10. Michael

    Cannot open Titanium Studio after installing OSX 10.10 update.
    Read on forums others have same problem.
    Will this download fix the problem?
    Thank you.

    • Ingo Muschenetz

      This release is SDK-only. However, installing Apple’s version of the JDK will fix your issue.

      • have upgraded our app but it crashes straight away in the simulator, with no output in the debugger, can you suggest how I can diagnose what might be the problem …i.e. which log files or utilities could I use?

  11. our app crashes instantly with no apparent diagnostic output, what strategies would you suggest to address this situation

Comments are closed.

Sign up for updates!

Become a mobile leader. Take the first step to scale mobile innovation throughout your enterprise.
Get in touch
computer and tablet showing Appcelerator software
Start free, grow from there.
17 Flares Twitter 0 Facebook 0 Google+ 0 LinkedIn 17 Email -- 17 Flares ×