[110] | 1 | /*! \page install TSPSG Installation Guide |
---|
| 2 | |
---|
| 3 | \author Copyright © 2007-2010 Lёppa <contacts[at]oleksii[dot]name> |
---|
| 4 | $Id: install.dox 145 2010-10-15 06:15:43Z laleppa $ |
---|
| 5 | $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/docs/dox/install.dox $ |
---|
| 6 | |
---|
| 7 | Thank you for trying \b TSPSG. This document will guide you through the |
---|
| 8 | steps necessary to compile and run \b TSPSG. |
---|
| 9 | |
---|
| 10 | <hr> |
---|
| 11 | |
---|
| 12 | \section i_toc Table of Contents |
---|
| 13 | |
---|
| 14 | -# \ref i_s1 |
---|
| 15 | -# \ref i_s2 |
---|
| 16 | -# \ref i_s3 |
---|
| 17 | -# \ref i_s4 |
---|
| 18 | -# \ref i_s41 |
---|
| 19 | -# \ref i_s42 |
---|
| 20 | -# \ref i_s43 |
---|
| 21 | -# \ref i_s44 |
---|
[145] | 22 | -# \ref i_s441 |
---|
| 23 | -# \ref i_s442 |
---|
[110] | 24 | -# \ref i_s45 |
---|
| 25 | -# \ref i_s46 |
---|
[145] | 26 | -# \ref i_s47 |
---|
[110] | 27 | -# \ref i_s5 |
---|
| 28 | -# \ref i_s6 |
---|
| 29 | -# \ref i_s61 |
---|
| 30 | -# \ref i_s7 |
---|
| 31 | -# \ref i_s8 |
---|
| 32 | |
---|
| 33 | <hr> |
---|
| 34 | |
---|
| 35 | \section i_s1 REQUIREMENTS |
---|
| 36 | |
---|
| 37 | To be able compile \b TSPSG you need to have <em>Qt libraries</em>\anchor cr1<sup>\ref r1 "[1]"</sup>. The minimum |
---|
[134] | 38 | supported version of \em Qt is <b>4.5.0</b>. The recommended version is <b>4.6.x</b> |
---|
[110] | 39 | or higher. |
---|
| 40 | |
---|
| 41 | \note Please, note that there will be some regressions in functionality |
---|
| 42 | if your version of \em Qt is lower than the recommended. |
---|
| 43 | |
---|
| 44 | <hr><hr> |
---|
| 45 | |
---|
| 46 | \section i_s2 ASSUMPTIONS |
---|
| 47 | |
---|
| 48 | This guide assumes that you already have <em>Qt libraries</em> and all necessary |
---|
| 49 | prerequisites installed. |
---|
| 50 | |
---|
| 51 | Also, the following assumptions are made: |
---|
| 52 | |
---|
[145] | 53 | - For \b Linux/UNIX/BSD: \c lrelease and \c qmake are avilable in \c $PATH. |
---|
[110] | 54 | - For \b Windows (\em minGW) and \b Symbian: you have installed <em>Qt SDK</em> or |
---|
| 55 | prebuilt libraries and have Start Menu items for Qt tools. |
---|
| 56 | - For \b Windows (<em>Visual Studio</em>) and <b>Windows Mobile</b>: the <em>Qt libraries</em> |
---|
| 57 | reside in <tt>C:\\Qt\\</tt>. |
---|
| 58 | - For <b>Windows Mobile</b>: <em>Windows Mobile 5.0 Pocket PC SDK</em> or later is |
---|
| 59 | installed. |
---|
| 60 | |
---|
| 61 | <hr><hr> |
---|
| 62 | |
---|
| 63 | \section i_s3 SUPPORTED PLATFORMS |
---|
| 64 | |
---|
| 65 | \b TSPSG is oficially supported and tested on the following platforms: |
---|
| 66 | |
---|
| 67 | - <b>Linux</b>: <em>Gentoo AMD64</em> and <em>Kubuntu 9.10 64-bit AMD</em>. |
---|
| 68 | - <b>Windows</b>: <em>Windows XP 32-bit</em> and <em>Windows 7 64-bit</em>. |
---|
| 69 | - <b>Windows Mobile</b>: <em>Windows Mobile 6.5 Professional Edition</em>. |
---|
| 70 | |
---|
| 71 | <hr><hr> |
---|
| 72 | |
---|
| 73 | \section i_s4 BUILDING AND INSTALLATION |
---|
| 74 | |
---|
| 75 | \subsection i_s41 GENERAL INSTALLATION PROCEDURE |
---|
| 76 | |
---|
[145] | 77 | To be able ot build \b TSPSG you need to have the following Qt modules: |
---|
| 78 | \em QtCore, \em QtGui and \em QtSvg. The first two are required, the last one is |
---|
| 79 | optional. To get support for additional image formats (i.e., \b JPEG and |
---|
| 80 | \b TIFF) you'll additionally need corresponding <em>Qt imageformats</em> plugins. |
---|
| 81 | |
---|
| 82 | If you want to build \b TSPSG without \b SVG support add \c nosvg to \c qmake |
---|
| 83 | \c CONFIG parameter, so that qmake command will typically be: |
---|
| 84 | |
---|
| 85 | \verbatim |
---|
| 86 | qmake CONFIG+=release CONFIG+=nosvg |
---|
| 87 | \endverbatim |
---|
| 88 | |
---|
| 89 | This way you will not depend on \em QtSvg module but will not be able to |
---|
| 90 | export solution graph in \b SVG format. |
---|
| 91 | |
---|
| 92 | |
---|
| 93 | \b TSPSG uses \c qmake \c PREFIX parameter to determine installation path for |
---|
| 94 | make install command. If you don't specify it when running \c qmake, it |
---|
| 95 | will be assigned the default value depending on the platform: |
---|
| 96 | |
---|
| 97 | <table> |
---|
| 98 | <tr><th>Platform</th><th>Default \c PREFIX value</th></tr> |
---|
| 99 | <tr><td>\b Linux/UNIX/BSD</td><td>\c /usr</td></tr> |
---|
| 100 | <tr><td>\b Windows</td><td></td>\c \%PROGRAMFILES\% environment variable (usually, it is <tt>C:\\Program Files</tt>)</tr> |
---|
| 101 | <tr><td><b>Windows CE/Mobile</b></td><td><tt>\\Program Files</tt></td></tr> |
---|
| 102 | <tr><td>\b Symbian</td><td></td><em>\<ignored></em></tr> |
---|
| 103 | </table> |
---|
| 104 | |
---|
| 105 | \note Please, note that there are no installation and/or packaging |
---|
| 106 | rules for \b MacOS and other platforms not mentioned in this table. |
---|
| 107 | |
---|
| 108 | |
---|
| 109 | By default, \b TSPSG uses precompiled header when being built. If you |
---|
| 110 | experience problems with it you may add \c CONFIG+=nopch parameter to |
---|
| 111 | \c qmake to disable the generation and use of the precompiled header. |
---|
| 112 | |
---|
| 113 | <hr> |
---|
| 114 | |
---|
| 115 | \subsection i_s42 GENERAL INSTALLATION PROCEDURE |
---|
| 116 | |
---|
[110] | 117 | On most platforms the general building and installation procedure is: |
---|
| 118 | |
---|
| 119 | -# Run \c lrelease to generate binary translation files (.qm) from the |
---|
| 120 | source (.ts). |
---|
| 121 | -# Run \c qmake with \c CONFIG+=release parameter to generate makefiles. |
---|
| 122 | -# Run make utility (e.g., \c make, \c nmake, \c mingw32-make) to build \b TSPSG. |
---|
| 123 | -# Run make utility with \c install parameter. |
---|
| 124 | |
---|
| 125 | \note It is important to run \c lrelease before \c qmake, or \c qmake will not |
---|
| 126 | "pick up" the translations when generating installation rules. |
---|
| 127 | |
---|
| 128 | <hr> |
---|
| 129 | |
---|
[145] | 130 | \subsection i_s43 LINUX/UNIX/BSD |
---|
[110] | 131 | |
---|
| 132 | Open a shell, navigate to the directory where you have \b TSPSG source |
---|
| 133 | downloaded and type |
---|
| 134 | |
---|
| 135 | \verbatim |
---|
[113] | 136 | tar xvjf tspsg-<VERSION>-src.tar.bz2 |
---|
| 137 | cd tspsg-<VERSION>-src |
---|
[110] | 138 | \endverbatim |
---|
| 139 | |
---|
| 140 | where \<VERSION> is the version of \b TSPSG you downloaded. Now run |
---|
| 141 | |
---|
| 142 | \verbatim |
---|
| 143 | lrelease tspsg.pro |
---|
| 144 | qmake tspsg.pro |
---|
| 145 | make |
---|
| 146 | \endverbatim |
---|
| 147 | |
---|
| 148 | In some cases you may need to type |
---|
| 149 | |
---|
| 150 | \verbatim |
---|
| 151 | qmake tspsg.pro CONFIG+=release |
---|
| 152 | \endverbatim |
---|
| 153 | |
---|
| 154 | If make step finished without errors you can install \b TSPSG by running |
---|
| 155 | |
---|
| 156 | \verbatim |
---|
| 157 | sudo make install |
---|
| 158 | \endverbatim |
---|
| 159 | |
---|
| 160 | or |
---|
| 161 | |
---|
| 162 | \verbatim |
---|
| 163 | su |
---|
| 164 | make install |
---|
| 165 | \endverbatim |
---|
| 166 | |
---|
| 167 | depending on your distribution. |
---|
| 168 | |
---|
[145] | 169 | The executable goes to \c \<PREFIX>/bin; \c COPYING, \c ChangeLog.txt, \c README.txt |
---|
| 170 | and \c INSTALL.txt go to \c \<PREFIX>/share/doc/TSPSG-\<VERSION>. |
---|
[110] | 171 | |
---|
| 172 | <hr> |
---|
| 173 | |
---|
[145] | 174 | \subsection i_s44 WINDOWS |
---|
[110] | 175 | |
---|
[145] | 176 | \b TSPSG will be installed to \c \<PREFIX>\\TSPSG folder. |
---|
| 177 | |
---|
[110] | 178 | \note Please, read the section \ref i_s7 after reading this section. |
---|
| 179 | |
---|
[145] | 180 | \subsubsection i_s441 USING MINGW |
---|
[110] | 181 | |
---|
| 182 | Unpack the downloaded source code of \b TSPSG with your favourite |
---|
| 183 | compression software. Now launch the <em>Qt Command Prompt</em> from the Start |
---|
| 184 | Menu, navigate to the directory where you unpacked the source and run |
---|
| 185 | |
---|
| 186 | \verbatim |
---|
| 187 | lrelease tspsg.pro |
---|
| 188 | qmake tspsg.pro CONFIG+=release |
---|
| 189 | mingw32-make |
---|
| 190 | \endverbatim |
---|
| 191 | |
---|
| 192 | \note Make process may fail with a crash of \c windres.exe. If you've run |
---|
| 193 | into this issue, please, read the section \ref i_s61. |
---|
| 194 | |
---|
| 195 | If make step finished without errors you can install \b TSPSG by running |
---|
| 196 | |
---|
| 197 | \verbatim |
---|
| 198 | mingw32-make install |
---|
| 199 | \endverbatim |
---|
| 200 | |
---|
| 201 | |
---|
[145] | 202 | \subsubsection i_s442 USING VISUAL STUDIO |
---|
[110] | 203 | |
---|
| 204 | Unpack the downloaded source code of \b TSPSG with your favourite |
---|
| 205 | compression software. Now launch the <em>Visual Studio Command Prompt</em> from |
---|
| 206 | the Start Menu, navigate to the directory where you unpacked the source |
---|
| 207 | and run |
---|
| 208 | |
---|
| 209 | \verbatim |
---|
| 210 | C:\Qt\bin\lrelease tspsg.pro |
---|
| 211 | C:\Qt\bin\qmake tspsg.pro CONFIG+=release |
---|
| 212 | nmake |
---|
| 213 | \endverbatim |
---|
| 214 | |
---|
| 215 | If make step finished without errors you can install \b TSPSG by running |
---|
| 216 | |
---|
| 217 | \verbatim |
---|
| 218 | nmake install |
---|
| 219 | \endverbatim |
---|
| 220 | |
---|
| 221 | <hr> |
---|
| 222 | |
---|
[145] | 223 | \subsection i_s45 WINDOWS CE/MOBILE |
---|
[110] | 224 | |
---|
| 225 | Unpack the downloaded source code of \b TSPSG with your favourite |
---|
| 226 | compression software. Now launch the <em>Visual Studio Command Prompt</em> from |
---|
| 227 | the Start Menu and run |
---|
| 228 | |
---|
| 229 | \verbatim |
---|
| 230 | set PATH=C:\Qt\bin;\%PATH\% |
---|
| 231 | setcepaths wincewm50pocket-msvc2008 |
---|
| 232 | \endverbatim |
---|
| 233 | |
---|
| 234 | Now navigate to the directory where you unpacked the source and run |
---|
| 235 | |
---|
| 236 | \verbatim |
---|
| 237 | lrelease tspsg.pro |
---|
| 238 | qmake tspsg.pro CONFIG+=release |
---|
| 239 | nmake |
---|
| 240 | \endverbatim |
---|
| 241 | |
---|
| 242 | There is no automated installation process for Windows Mobile build. To |
---|
| 243 | install \b TSPSG on your PDA you need to create a folder on your device |
---|
| 244 | and copy the following files to it: |
---|
| 245 | |
---|
[113] | 246 | - \b tspsg.exe from \c release folder in the source directory. |
---|
[110] | 247 | - \b QtCore4.dll and \c QtGui4.dll from \c C:\\Qt\\bin folder. |
---|
| 248 | - \b msvcr90.dll from <tt>C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\ce\\dll\\armv4i</tt> folder. |
---|
| 249 | - all <b>*.qm</b> files from \c l10n folder in the source directory to \c l10n subfolder. |
---|
| 250 | |
---|
| 251 | <hr> |
---|
| 252 | |
---|
[145] | 253 | \section i_s46 SYMBIAN |
---|
[110] | 254 | |
---|
| 255 | Unpack the downloaded source code of \b TSPSG with your favourite |
---|
| 256 | compression software. Now launch the <em>Qt for Symbian Command Prompt</em> from |
---|
| 257 | the Start Menu, navigate to the directory where you unpacked the source |
---|
| 258 | and run |
---|
| 259 | |
---|
| 260 | \verbatim |
---|
| 261 | lrelease tspsg.pro |
---|
| 262 | qmake tspsg.pro CONFIG+=release |
---|
| 263 | make release-gcce |
---|
| 264 | \endverbatim |
---|
| 265 | |
---|
| 266 | \warning You need to unpack the source to the <em>same drive</em> as <em>Symbian SDK</em> |
---|
| 267 | and the path <em>must not contain any spaces</em> or \b TSPSG won't build. |
---|
| 268 | |
---|
| 269 | If make step finished without errors you can generate sis installation |
---|
| 270 | file by running |
---|
| 271 | |
---|
| 272 | \verbatim |
---|
| 273 | make sis |
---|
| 274 | \endverbatim |
---|
| 275 | |
---|
[113] | 276 | You'll get \c tspsg.sis file in the source directory. Copy it to your |
---|
[110] | 277 | phone and run or install it using <em>Nokia PC Suite</em>. |
---|
| 278 | |
---|
| 279 | \note You need to install <em>Qt libraries</em> on your device before installing |
---|
| 280 | \b TSPSG. Usually, it should be enough to install \c qt_installer.sis from |
---|
| 281 | the Qt installation directory. |
---|
| 282 | |
---|
| 283 | Alternatively, if you have installed <em>Nokia Smart Installer</em>\anchor cr2<sup>\ref r2 "[2]"</sup> you can run |
---|
| 284 | |
---|
| 285 | \verbatim |
---|
| 286 | make installer_sis |
---|
| 287 | \endverbatim |
---|
| 288 | |
---|
[113] | 289 | You'll get an \c tspsg_installer.sis that will automatically download and |
---|
[110] | 290 | install the required <em>Qt libraries</em> on \b TSPSG installation. |
---|
| 291 | |
---|
| 292 | \note Please, be aware that you have to sign the sis file to be able to |
---|
| 293 | install it on your device. You can use <em>Open Signed Online</em>\anchor cr3<sup>\ref r3 "[3]"</sup> to quickly |
---|
| 294 | sign the sis file for your device. Alternatively, you can try to enable |
---|
| 295 | the installation of self-signed files in the phone settings. Please, |
---|
| 296 | reffer to your phone manual on the instructions how to do this. |
---|
| 297 | |
---|
| 298 | <hr> |
---|
| 299 | |
---|
[145] | 300 | \subsection i_s47 OTHER PLATFORMS, SUPPORTED BY QT |
---|
[110] | 301 | |
---|
| 302 | While \b TSPSG is oficially supported only on \b Linux, \b Windows and <b>Windows |
---|
| 303 | Mobile</b> it should be possible to compile it on any platform, supported |
---|
| 304 | by \em Qt. To do so, please, refer to the section \ref i_s41 for the general build |
---|
| 305 | and installation procedure. |
---|
| 306 | |
---|
| 307 | <hr><hr> |
---|
| 308 | |
---|
| 309 | \section i_s5 UNINSTALLATION |
---|
| 310 | |
---|
| 311 | Usually, it is enough to replace \c install parameter with \c uninstall |
---|
| 312 | in the installation command from the section \ref i_s4. Alternatively, you can manually |
---|
| 313 | delete all installed \b TSPSG files and directories. |
---|
| 314 | |
---|
| 315 | <hr><hr> |
---|
| 316 | |
---|
| 317 | \section i_s6 TROUBLESHOOTING |
---|
| 318 | |
---|
| 319 | \subsection i_s61 WINDRES.EXE CRASH |
---|
| 320 | |
---|
| 321 | When building under \b Windows using <em>minGW</em> toolchain make process may fail |
---|
| 322 | with \c windres.exe crash (access violation). This is a known bug in |
---|
| 323 | \c windres.exe regarding processing resource files with \c UTF-8 (\c cp65001) |
---|
| 324 | encoding\anchor cr4<sup>\ref r4 "[4]"</sup>. To be able to successfully build \b TSPSG you will need to |
---|
| 325 | download and replace \c windres.exe with a fixed version. To do this: |
---|
| 326 | |
---|
| 327 | -# Open https://sourceforge.net/projects/mingw/files/ in your |
---|
| 328 | favourite browser. |
---|
| 329 | -# Find and download the latest version of <em>GNU Binutils</em>. At the time |
---|
| 330 | of writing this guide it was \c binutils-2.20.1-2-mingw32-bin.tar.gz. |
---|
| 331 | -# Unpack the file \c bin\windres.exe from the downloaded archive to |
---|
| 332 | <tt>\<Your Qt installation path>\\mingw\\bin\\</tt> replacing the existing one. |
---|
| 333 | -# Now run |
---|
| 334 | \verbatim |
---|
| 335 | mingw32-make distclean |
---|
| 336 | \endverbatim |
---|
| 337 | in the \b TSPSG directory and repeat the installation process. |
---|
| 338 | |
---|
| 339 | <hr><hr> |
---|
| 340 | |
---|
| 341 | \section i_s7 NOTES |
---|
| 342 | |
---|
| 343 | \c qmake doesn't always enclose installation paths in quotes. This may |
---|
| 344 | cause some files not to be installed or removed when their path |
---|
| 345 | contains spaces. In this case it is safe to delete these files and \b TSPSG |
---|
| 346 | installation directory manually. |
---|
| 347 | |
---|
| 348 | <hr><hr> |
---|
| 349 | |
---|
| 350 | \section i_s8 REFERNECES |
---|
| 351 | |
---|
[121] | 352 | -# \ref cr1 "^" \anchor r1 http://qt.nokia.com/ |
---|
| 353 | -# \ref cr1 "^" \anchor r2 http://qt.nokia.com/developer/nokia-smart-installer-for-symbian |
---|
| 354 | -# \ref cr2 "^" \anchor r3 https://www.symbiansigned.com/app/page/public/openSignedOnline.do |
---|
| 355 | -# \ref cr3 "^" \anchor r4 http://sourceware.org/bugzilla/show_bug.cgi?id=10165 |
---|
[110] | 356 | */ |
---|