initial import
[serna.git] / INSTALL
1     Syntext Serna Free Edition build and install instructions.
2         
3 1. Prerequisites.
4
5 1.1. Operating systems.
6
7     Serna Free Edition builds were tested on the following platforms:
8     
9   a. Windows XP Service Pack 3
10   b. Fedora 10
11   c. MacOS 10.5
12
13 1.2. C++ compiler
14
15   Serna build requires g++ 4.1+ compiler on Linux and 
16   Microsoft Visual C++ 2008 Express on Windows. 
17   MacOS build requires g++ 4.0.x (installed with Xcode 3.1.2)
18
19 1.3. Tools and libraries
20
21   Required tools are:
22   
23     flex
24     bison
25     grep
26     sed
27     cat
28     bzip2
29     gzip
30     patch
31     tar
32     zip
33     unzip
34     perl
35     java
36
37   Since default Windows install does not include these tools, it's necessary to 
38   install the following packages to successfully build and install Serna on Windows:
39   
40   a. ActiveState Perl 5.x (http://www.activestate.com/activeperl)
41   b. Cygwin utilities (http://www.cygwin.com)
42
43      Make sure to install 
44        1. zip and unzip from Archive category
45        2. bison and flex from Devel category
46        3. patch from Utils category
47
48   c. Inno Setup 5 (http://www.jrsoftware.org)
49   d. Sun Java 1.6.x (http://java.sun.com)
50   
51   Linux systems require X11, zlib and ncurses development libraries to build third-party 
52   packages used by Serna. To generate RPM packages rpm and rpmbuild are needed.
53   
54 2. Build process.
55
56 2.1. Third-party libraries and tools.
57
58   Serna uses the following third-party packages:
59   
60   a. ANTLR parser generator version 2.7.1
61   b. GNU Aspell version 0.50.5
62   c. IBM DITA Open Toolkit version 1.4
63   d. DocBook stylesheets version 1.68.1
64   e. Doxygen documentation generator version 1.5.1
65   f. GNU iconv library version 1.11
66   g. libxml2 version 2.6.27 - The XML C parser and toolkit
67   h. libxslt version 1.1.19 - XSLT support for libxml2
68   i. PyQt version 4.4.4 - Python bindings for Qt library
69   j. Python version 2.6.2
70   k. QScintilla For Qt 4 text editor version 2.3.2
71   l. Nokia Qt framework version 4.5.1
72   m. Qt property browser framework version 2.5
73   n. SIP - Python C/C++ Bindings Generator version 4.7.9
74   
75 2.2. Building Serna.
76
77   a. Unpack Syntext Serna distribution package.
78   b. Create 'packages' subdirectory in the '3rd' directory
79   c. Place third-party packages in the 'packages' subdirectory
80      
81      Package archives that are platform independent:
82      
83        antlr-2.7.1.tar.gz
84        aspell-0.50.5.tar.bz2
85        DITA-OT1.4_fullpackage_bin.tar.gz
86        docbook-xsl-1.68.1.tar.bz2
87        doxygen-1.5.1.src.tar.gz
88        libiconv-1.11.tar.gz
89        libxml2-2.6.27.tar.gz
90        libxslt-1.1.19.tar.gz
91        PyQt-x11-gpl-4.4.4.tar.gz
92        Python-2.6.2.tar.bz2
93        QScintilla-gpl-2.3.2.tar.gz
94        qtpropertybrowser-2.5-opensource.tar.gz
95        sip-4.7.9.tar.bz2
96      
97      Windows packages:
98      
99        qt-win-opensource-src-4.5.1.zip
100      
101      Linux packages:
102      
103        qt-x11-opensource-src-4.5.1.tar.gz
104      
105      MacOS packages:
106      
107        qt-mac-opensource-src-4.5.1.tar.gz
108        
109      Packages can be downloaded from Syntext website at
110      
111        http://downloads.syntext.com/opensource
112   
113   d. Run build.sh on Linux/MacOS or build.bat on Windows
114   
115      Build produces installation packages that are placed
116   
117      on Windows: dist\serna-4.1.0-YYYYMMDD.exe
118
119      on Linux: rpm/RPMS/i686/serna-4.1.0-YYYYMMDD.i686.rpm
120
121      on MacOS: build/serna/serna-4.1.0-YYYYMMDD.dmg
122
123 3. Installing Serna
124
125   Serna can be installed using standard installation methods for each OS 
126   it can be built on. 
127   
128   To run Serna on Windows it's required to install Microsoft Visual C++ 2008 
129   Redistributable Package which can be downloaded from Microsoft
130   (http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf)
131