titanium icon indicating copy to clipboard operation
titanium copied to clipboard

This repository has relocated to http://github.com/appcelerator/titanium_desktop

+=======================================================================================+

  •                            Appcelerator Titanium                                  +
    

+=======================================================================================+

For details on Titanium, please see http://titaniumapp.com.


Build Prerequisites

To build Titanium from source, you will need the following prerequisites:

  • Python (see platform specific notes below)
  • Scons package - http://www.scons.org/
  • Platform compiler (see below for each platform)

Python and SCons are used to build Titanium but not required for end-development or runtime.

To build Titanium, you will need to first checkout the Titanium source code from http://github.com/marshall/titanium/tree/master.

Currently, we are building Titanium for 32-bit architectures but intend to support 64-bit very soon. If you have patches or would like to assist, please contact us (see below for IRC or email information).


Setup

You will first need to update the kroll submodule that is checked in to Titanium before you can succesfully build. You can run the following command from the root source directory to update the submodule:

git submodule update --init

This will pull the contents of the submodule into your local kroll folder.


Building

Titanium uses SCons for building. You can run scons by typing:

scons

To enable a debug build, use the debug flag:

scons debug=1

To build the packaged bundles, use package flag:

scons package=1

The output of the build will be in a folder named build<osname> such as build/osx for OSX.


Platform Info

Titanium requires platform-specific builds. Currently, Titanium builds on Win32, Linux and Mac OSX 10.5.4+.

Win32

You will need Microsoft Visual Studio 2005 + Service Packs to build Titanium. We have not tested building Titanium on Visual Studio 2008. You will need to obtain the Microsoft Visual Studio Service Pack 1 to compile Titanium.

Needed service packs from Microsoft:

Win32 Python Notes

You will need to set the environment variable PYTHONHOME to the location of your installed python.

Set PYTHONHOME environment (Windows only):

set PYTHONHOME=c:\Python25

(Suggest you open Control Panel and set it in your permanent environment) You will need to have Python 2.5 installed to build Win32. Later versions currently are not supported. You can download Python at http://www.python.org/download/releases/2.5.2

Win32 Ruby Notes

To build Ruby module support you will need to first install Ruby 1.8+ and make sure it's own your path. There is a problem with the included Ruby header file named config.h (under $RUBY\lib\ruby\1.8\i386-mswin32) that requires you to hand edit the file to comment out the check. If you receive the following warning:

fatal error C1189: #error : MSC version unmatch

Then you have experienced this error. Hand edit the file and comment out the top of the header file that checks the version and re-compile.

OSX

You will need XCode 3.0+ to build Titanium and it must be built on Leopard. Titanium is only supported on Leopard (or later).

If you have xcode installed, you should be able to build Titanium with no additional dependencies.

Linux

Each distribution varies slightly for building Titanium on a Linux distribution.

Ubuntu 8.10 32bit

  1. Install the required libraries:

sudo apt-get install build-essential ruby rubygems libzip-ruby scons libxml2-dev libgtk2.0-dev python-dev ruby-dev libdbus-glib-1-dev libnotify-dev libgstreamer0.10-dev libxss-dev libcurl4-openssl-dev libnotify-dev libgstreamer0.10-dev libcurl4-openssl-dev python2.5-dev libxss-dev

  1. Install Git:

sudo apt-get install git-core

You may need a later version of Scons for Linux if you get build errors. (>=1.2.0)


Getting Assistance

For more details on Titanium, please see the website at http://titaniumapp.com

We invite you to visit us on IRC at #titanium_app on irc.freenode.net.

If you need more assistance, please go to the Appcelerator Developer Community at http://community.appcelerator.org.

To report a bug or make a feature request, please visit our Issue Tracking portal at http://jira.appcelerator.org.

-- The Appcelerator Team


Credits

Titanium was made possible by a number of awesome contributors:

  • Marshall Culpepper, Project Leader
  • Tyrus Smalley, Creative Genius
  • Jorge Servin, Win32
  • Jeff Haynie, OSX
  • Martin Robinson, Linux
  • Nolan Wright, Apps + Testing
  • Don Thorp, Mobile Lead
  • Blain Hamon, OSX
  • Paolo F, Apps + Testing
  • Mark Obcena, Documentation + Testing (and moral support)
  • Will Robertson, Build + Testing on various Linux distros

(and lots others who we don't necessarily know your name but we know you have helped)

Special thanks to all those who continually stop by the IRC channel to offer assistance, bug reports and moral support. We love you!

If you are interested in becoming a community developer and contributing to Titanium, please contact us at [email protected].


Legal Stuff

Copyright (C) 2008-2009 by Appcelerator, Inc. All Rights Reserved. For more information, please visit http://license.appcelerator.org. Appcelerator, Titanium and logos are trademarks of Appcelerator, Inc.

Please see the file named LICENSE for the full license.