Titanium Community Questions & Answer Archive

We felt that 6+ years of knowledge should not die so this is the Titanium Community Questions & Answer Archive

new problems compiling on 1.4.1

I appear to be having two problems with the GIT head build.
On Developer 1.2.1, OSX SDK 1.4.1 with Apple Xcode 3.2.4, iOS SDK 4.1 compilation stops without warning and the application never loads. Running Xcode and compiling manually I see a build failed error

_OBJC_CLASS_$_SBJSON". referenced from: Objc-class-ref-to-SBJSON in libtiverify.a (TiVerify.o) 
Symbol(s) not found

libtiverify.a looks to have last been modified on 2010-09-10.

Also on the windows version when trying to run SCONS I get errors trying to compile the latest

scons: Reading SConscript files ...
WindowsError: [Error 2] The system cannot find the file specified:
  File "C:\Users\dev\src\titanium_mobile\SConstruct", line 6:
    import package
  File "C:\Users\dev\src\titanium_mobile\site_scons\package.py", line 24:
    p = subprocess.Popen(["git","show","--abbrev-commit"],stderr=subprocess.PIPE, stdout=subprocess.PIPE)
  File "c:\Python26\lib\subprocess.py", line 623:
    errread, errwrite)
  File "c:\Python26\lib\subprocess.py", line 833:

Anyone else suffering or should I just reinstall and hope for the best?

— asked September 11th 2010 by Gregor Munro
  • libtiverify
  • scons
  • tiverify
  • _objc_class_$_sbjson

3 Answers

  • You will need to reverse to the previous libtiverify.a too.

    — answered September 15th 2010 by Dan Tamas
  • I have an answer for those that need it - Courtesy of Stephen Tramer

    "You'll need to take a couple extra steps to use the new Titanium Mobile with your project:

    • Copy the source from /Library/Application Support/Titanium/mobilesdk/osx/<version>/iphone/Classes to the build/iphone/Classes directory of your project
    • Clean and rebuild

    This is because we had to internally change some of the symbols to avoid conflicts.

    This is fixed, but assigning this to Ralf/needs-more-info to see if there's going to be some way in a TiDev that can be released simultaneously with 1.5.0 to update old projects - in fact, this is a feature that's been missing from TiDev for some time!"

    — answered September 20th 2010 by Gregor Munro
  • Just confirmed, if you reverse out Steven Tramers 2010-09-10 13:29:15 modifications to iphone/Classes/SBJSON.h and iphone/Classes/SBJSON.m (replace instances of TI_SBJSON with SBJSON) then you can compile successfully, however you do leave yourself open to the issues Stephen was trying to fix with respect to SBJSON symbols being renamed (and aliased) to avoid module conflicts.

    — answered September 12th 2010 by Gregor Munro
The ownership of individual contributions to this community generated content is retained by the authors of their contributions.
All trademarks remain the property of the respective owner.