Changeset - cd296de7b717
[Not reviewed]
Merge
0 2 1
Jan Kaluza - 10 years ago 2015-12-28 08:57:44
jkaluza@redhat.com
Merge branch 'gh-pages' of github.com:hanzz/spectrum2 into gh-pages
2 files changed with 77 insertions and 2 deletions:
0 comments (0 inline, 0 general)
documentation/installation/debian_ubuntu.md
Show inline comments
 
@@ -2,10 +2,10 @@
 
layout: page
 
title: Spectrum 2
 
---
 

	
 
### Using spectrum repository
 
We have APT repositories for Debian and Ubuntu that make it very easy to install Spectrum 2.
 

	
 
To use the repositories, just add the following lines to @/etc/apt/sources.list@:
 
To use the repositories, just add the following lines to `/etc/apt/sources.list`:
 

	
 
	deb http://repo.spectrum.im $dist main
 

	
 
@@ -13,6 +13,20 @@ where $dist is either lucid, oneiric, precise, quantal, sid, squeeze, wheezy. If
 

	
 
	apt-get update
 
	
 
### Building packages for different distributions/architectures
 
At now we do not have resources to support all different debian-based distributions and/or architectures, but you always can create packages for desired distribution yourself.
 
All required files for building Spectrum debian packages are present in the `packaging/debian` directory of spectrum Git repository. Most of required dependencies should be in the main Debian/Ubuntu repositories, except:
 

	
 
1. Swiften - the old Swiften library used by Spectrum is present in stable [Debian](https://packages.debian.org/jessie/libswiften-dev) and [Ubuntu LTS](http://packages.ubuntu.com/trusty/libswiften-dev) but may be missing in unstable/rolling Debian/Ubuntu trees. However, you can use their own [Debian/Ubuntu repository](https://github.com/hanzz/spectrum2/blob/master/.travis.yml#L10) or create packages yourself using the same method described here for Spectrum :)
 
2. Communi - this library is unavailable in Debian/Ubuntu, but we provide a special [repository](https://github.com/vitalyster/libcommuni-gbp) from which you can build libcommuni
 

	
 
#### Packaging for your current distribution
 
[TBD]
 
#### Creating package for different debian-based distro
 
We will show how to build Spectrum for the popular [Raspberry Pi](https://www.raspberrypi.org/) (or any similar) ARM-based machine with Debian-based distribution installed on it
 

	
 
[TBD]
 

	
 
### Install spectrum2
 

	
 
After you have done that, simply do:
documentation/installation/windows.md
Show inline comments
 
new file 100644
 
Prerequisites
 
=============
 

	
 
1. Microsoft Visual C++ 2010 Express or higher edition (http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express)
 
2. Git for Windows (http://code.google.com/p/msysgit/downloads/list)
 
3. CMake 2.8 or newer (http://www.cmake.org/cmake/resources/software.html)
 
4. Python 2.x for Swiften build scripts (scons) (http://www.python.org)
 

	
 
Libraries
 
=========
 
3. Swiften library (http://swift.im/git/swift)
 
4. Boost 1.48 or newer (http://sourceforge.net/projects/boost/files/boost/1.49.0/)
 
5. Google ProtoBuf library (http://code.google.com/p/protobuf/downloads/list)
 

	
 

	
 
Environment
 
===========
 

	
 
To create spectrum build environment do:
 

	
 
0. Create directory where we'll install all dependencies, e.g. C:\env-msvc-x64.
 
Create C:\env-msvc-x64\bin and add it to %PATH%.
 
Assuming you have git, python and cmake in %PATH%, 
 
launch "Visual Studio 2010 command prompt" or
 
"Visual Studio 2010(x64) command prompt", depends on your target (Windows x86 or Windows x86_64).
 
1. unpack and build boost libraries:
 

	
 
	bootstrap.bat
 
	b2.exe --without-mpi --without-python
 
	b2.exe --without-mpi --without-python install --prefix=C:\env-msvc-x64 release
 

	
 
2. clone swift repository and build it. Don't forget to point it to our env directory:
 

	
 
	git clone git://swift.im/swift
 
	cd swift
 
	echo boost_includedir="c:/env-msvc-x64/include/boost-1_49" > config.py
 
	echo boost_libdir="c:/env-msvc-x64/lib" >> config.py 
 
	scons.bat debug=no SWIFTEN_INSTALLDIR=C:\env-msvc-x64 force_configure=1
 
	scons.bat debug=no SWIFTEN_INSTALLDIR=C:\env-msvc-x64 C:\env-msvc-x64
 

	
 
3. unpack and compile protobuf as described in its documentation. 
 

	
 
Run extract_includes.bat in vsprojects/ directory and move resulting vsprojects/include/google/ directory to our C:\env-msvc-x64\include
 

	
 
Move protoc.exe to C:\env-msvc-x64\bin\ and libprotobuf.lib to C:\env-msvc-x64\lib
 

	
 
4. Install gtkmm
 

	
 
Download installer from https://live.gnome.org/gtkmm/MSWindows and install gtkmm into C:\env-msvc-x64\
 

	
 
5. Install libpurple headers
 

	
 
Download http://www.pidgin.im/download/source/ , extract it and copy libpurple directory in C:\env-msvc-x64\include
 

	
 
6. You're ready! :) Clone libtransport into C:\env-msvc-x64\libtransport (You *must* clone it into this directory, because libtransport will try to find the dependencies in ../lib and ../include)
 

	
 
Compile it as:
 

	
 
	set CMAKE_INCLUDE_PATH=C:\env-msvc-x64\include
 
	cmake . -G "NMake Makefiles" -DBOOST_INCLUDEDIR=../include/boost-1_49 -DBOOST_LIBRARYDIR=../lib -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=C:\env-msvc-x64 -DGIT_EXECUTABLE="c:\Program Files (x86)\git\bin\git.exe"
 
	nmake
0 comments (0 inline, 0 general)