Ubuntu 11.10 Compiling - LemontechSA/TideSDK GitHub Wiki
Install Prerequisites
- General dependencies
sudo apt-get install build-essential ruby rubygems libzip-ruby1.9.1 scons libxml2-dev libgtk2.0-dev python2.6-dev ruby-dev libdbus-glib-1-dev libnotify-dev libgstreamer0.10-dev libxss-dev libcurl4-openssl-dev git-core libsoup2.4-1 libsoup2.4-dev libsoup-gnome2.4-dev libicu-dev libgnutls-dev libjpeg8-dev libcurl4-openssl-dev libenchant-dev
- Webkit dependencies
sudo apt-get install bison flex gperf libjpeg8-dev libgail-dev libxt-dev libsqlite3-dev libxslt1-dev libgstreamer-plugins-base0.10-dev libgpgme11-dev
Checkout the Sources
We always work from the development branch. MacOSX 10.6 is not the current build target. Kroll has been tagged at 0.1.3 to be able to build it with Xcode 4.3 install.
git clone git://github.com/TideSDK/TideSDK
cd TideSDK
git checkout develop
git submodule update --init
cd kroll
git checkout develop
cd ..
Notes
The following changes need to be applied in order to compiled:
File: kroll/modules/python/SConscript
- Uncommnet lines 15 & 16
- Change the version from 2.6 to 2.7
- After line 18 add the following: env.Append(CXXFLAGS = ['-Wno-unused-but-set-variable'])
After changes it should look like this:
elif build.is_linux():
env.Append(CPPPATH=[
'${PYTHON_INCLUDE}',
'/usr/lib/python/2.7/i386-linux',
'/usr/include/python2.7',
build.kroll_include_dir])
env.Append(LIBS=['python${PYTHON_VERSION}'])
env.Append(CXXFLAGS = ['-Wno-unused-but-set-variable'])
File: kroll/site_scons/kroll.py
- Change the version from 2.6 to 2.7 on lines 60-61
After change it should look like this:
add_environ_arg('PYTHON_VERSION', 'The version of Python to build against', '2.7')
add_environ_arg('PYTHON_INCLUDE', 'The Python include directory', '/usr/include/python2.7')
File: modules/ti.UI/gtk/NotificationGtk.cpp
- Remove the NULL on line 65, remove the comma from the end of the line before, and move the ); to the end of that line. (this is due to an API change in newer GTK2 versions. The last parameter is no longer there and the function expects 3 parameters. http://developer.gnome.org/libnotify/0.7/NotifyNotification.html#notify-notification-new)
After changes it should look like this:
this->notification = notify_notification_new(
this->title.c_str(),
this->message.c_str(),
iconPath.c_str());