source: tspsg-svn/trunk/docs/html/install.html @ 112

Last change on this file since 112 was 112, checked in by laleppa, 15 years ago

Updated translations and regenerated documentation.

File size: 19.2 KB
RevLine 
[112]1<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<title>TSPSG: TSP Solver and Generator: TSPSG Installation Guide</title>
7<link href="tabs.css" rel="stylesheet" type="text/css"/>
8<link href="search/search.css" rel="stylesheet" type="text/css"/>
9<script type="text/javaScript" src="search/search.js"></script>
10<link href="doxygen.css" rel="stylesheet" type="text/css"/>
11</head>
12<body onload='searchBox.OnSelectItem(0);'>
13<!-- Generated by Doxygen 1.6.1 -->
14<script type="text/javascript"><!--
15var searchBox = new SearchBox("searchBox", "search",false,'Search');
16--></script>
17<script type="text/javascript">
18<!--
19function changeDisplayState (e){
20  var num=this.id.replace(/[^[0-9]/g,'');
21  var button=this.firstChild;
22  var sectionDiv=document.getElementById('dynsection'+num);
23  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
24    sectionDiv.style.display='block';
25    button.src='open.gif';
26  }else{
27    sectionDiv.style.display='none';
28    button.src='closed.gif';
29  }
30}
31function initDynSections(){
32  var divs=document.getElementsByTagName('div');
33  var sectionCounter=1;
34  for(var i=0;i<divs.length-1;i++){
35    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
36      var header=divs[i];
37      var section=divs[i+1];
38      var button=header.firstChild;
39      if (button!='IMG'){
40        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
41        button=document.createElement('img');
42        divs[i].insertBefore(button,divs[i].firstChild);
43      }
44      header.style.cursor='pointer';
45      header.onclick=changeDisplayState;
46      header.id='dynheader'+sectionCounter;
47      button.src='closed.gif';
48      section.id='dynsection'+sectionCounter;
49      section.style.display='none';
50      section.style.marginLeft='14px';
51      sectionCounter++;
52    }
53  }
54}
55window.onload = initDynSections;
56-->
57</script>
58<div class="navigation" id="top">
59  <div class="tabs">
60    <ul>
61      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
62      <li class="current"><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
63      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
64      <li><a href="annotated.html"><span>Classes</span></a></li>
65      <li><a href="files.html"><span>Files</span></a></li>
66      <li>
67        <div id="MSearchBox" class="MSearchBoxInactive">
68        <img id="MSearchSelect" src="search/search.png"
69             onmouseover="return searchBox.OnSearchSelectShow()"
70             onmouseout="return searchBox.OnSearchSelectHide()"
71             alt=""/>
72        <input type="text" id="MSearchField" value="Search" accesskey="S"
73             onfocus="searchBox.OnSearchFieldFocus(true)" 
74             onblur="searchBox.OnSearchFieldFocus(false)" 
75             onkeyup="searchBox.OnSearchFieldChange(event)"/>
76        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
77        </div>
78      </li>
79    </ul>
80  </div>
81</div>
82<div class="contents">
83
84
85<h1><a class="anchor" id="install">TSPSG Installation Guide </a></h1><dl class="author"><dt><b>Author:</b></dt><dd>Copyright &copy; 2007-2010 Lёppa &lt;contacts[at]oleksii[dot]name&gt; </dd></dl>
86<dl class="rcs"><dt><b>Id</b></dt><dd>install.dox 111 2010-04-27 23:40:22Z laleppa </dd></dl>
87<dl class="rcs"><dt><b>URL</b></dt><dd><a href="https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/docs/dox/install.dox">https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/docs/dox/install.dox</a> </dd></dl>
88<p>Thank you for trying <b>TSPSG</b>. This document will guide you through the steps necessary to compile and run <b>TSPSG</b>.</p>
89<hr/>
90<h2><a class="anchor" id="i_toc">
91Table of Contents</a></h2>
92<ol type="1">
93<li><a class="el" href="install.html#i_s1">REQUIREMENTS</a></li>
94<li><a class="el" href="install.html#i_s2">ASSUMPTIONS</a></li>
95<li><a class="el" href="install.html#i_s3">SUPPORTED PLATFORMS</a></li>
96<li><a class="el" href="install.html#i_s4">BUILDING AND INSTALLATION</a><ol type="a">
97<li><a class="el" href="install.html#i_s41">GENERAL INSTALLATION PROCEDURE</a></li>
98<li><a class="el" href="install.html#i_s42">LINUX/UNIX</a></li>
99<li><a class="el" href="install.html#i_s43">WINDOWS</a><ol type="i">
100<li><a class="el" href="install.html#i_s431">USING MINGW</a></li>
101<li><a class="el" href="install.html#i_s432">USING VISUAL STUDIO</a></li>
102</ol>
103</li>
104<li><a class="el" href="install.html#i_s44">WINDOWS CE/MOBILE</a></li>
105<li><a class="el" href="install.html#i_s45">SYMBIAN</a></li>
106<li><a class="el" href="install.html#i_s46">OTHER PLATFORMS, SUPPORTED BY QT</a></li>
107</ol>
108</li>
109<li><a class="el" href="install.html#i_s5">UNINSTALLATION</a></li>
110<li><a class="el" href="install.html#i_s6">TROUBLESHOOTING</a><ol type="a">
111<li><a class="el" href="install.html#i_s61">WINDRES.EXE CRASH</a></li>
112</ol>
113</li>
114<li><a class="el" href="install.html#i_s7">NOTES</a></li>
115<li><a class="el" href="install.html#i_s8">REFERNECES</a></li>
116</ol>
117<hr/>
118<h2><a class="anchor" id="i_s1">
119REQUIREMENTS</a></h2>
120<p>To be able compile <b>TSPSG</b> you need to have <em>Qt libraries</em><a class="anchor" id="cr1"></a><sup><a class="el" href="install.html#r1">[1]</a></sup>. The minimum supported version of <em>Qt</em> is <b>4.4.0</b>. The recommended version is <b>4.5.x</b> or higher.</p>
121<dl class="note"><dt><b>Note:</b></dt><dd>Please, note that there will be some regressions in functionality if your version of <em>Qt</em> is lower than the recommended.</dd></dl>
122<hr/>
123<hr/>
124<h2><a class="anchor" id="i_s2">
125ASSUMPTIONS</a></h2>
126<p>This guide assumes that you already have <em>Qt libraries</em> and all necessary prerequisites installed.</p>
127<p>Also, the following assumptions are made:</p>
128<ul>
129<li>For <b>Linux/UNIX</b>: <code>lrelease</code> and <code>qmake</code> are avilable in <code>$PATH</code>.</li>
130<li>For <b>Windows</b> (<em>minGW</em>) and <b>Symbian:</b> you have installed <em>Qt SDK</em> or prebuilt libraries and have Start Menu items for Qt tools.</li>
131<li>For <b>Windows</b> (<em>Visual Studio</em>) and <b>Windows Mobile</b>: the <em>Qt libraries</em> reside in <code>C:\Qt\</code>.</li>
132<li>For <b>Windows Mobile</b>: <em>Windows Mobile 5.0 Pocket PC SDK</em> or later is installed.</li>
133</ul>
134<hr/>
135<hr/>
136<h2><a class="anchor" id="i_s3">
137SUPPORTED PLATFORMS</a></h2>
138<p><b>TSPSG</b> is oficially supported and tested on the following platforms:</p>
139<ul>
140<li><b>Linux</b>: <em>Gentoo AMD64</em> and <em>Kubuntu 9.10 64-bit AMD</em>.</li>
141<li><b>Windows</b>: <em>Windows XP 32-bit</em> and <em>Windows 7 64-bit</em>.</li>
142<li><b>Windows Mobile</b>: <em>Windows Mobile 6.5 Professional Edition</em>.</li>
143</ul>
144<hr/>
145<hr/>
146<h2><a class="anchor" id="i_s4">
147BUILDING AND INSTALLATION</a></h2>
148<h3><a class="anchor" id="i_s41">
149GENERAL INSTALLATION PROCEDURE</a></h3>
150<p>On most platforms the general building and installation procedure is:</p>
151<ol type="1">
152<li>Run <code>lrelease</code> to generate binary translation files (.qm) from the source (.ts).</li>
153<li>Run <code>qmake</code> with <code>CONFIG+=release</code> parameter to generate makefiles.</li>
154<li>Run make utility (e.g., <code>make</code>, <code>nmake</code>, <code>mingw32-make</code>) to build <b>TSPSG</b>.</li>
155<li>Run make utility with <code>install</code> parameter.</li>
156</ol>
157<dl class="note"><dt><b>Note:</b></dt><dd>It is important to run <code>lrelease</code> before <code>qmake</code>, or <code>qmake</code> will not "pick up" the translations when generating installation rules.</dd></dl>
158<hr/>
159<h3><a class="anchor" id="i_s42">
160LINUX/UNIX</a></h3>
161<p>Open a shell, navigate to the directory where you have <b>TSPSG</b> source downloaded and type</p>
162<div class="fragment"><pre class="fragment">
163tar xvjf \b TSPSG-&lt;VERSION&gt;-src.tar.bz2
164cd \b TSPSG-&lt;VERSION&gt;-src
165</pre></div><p>where &lt;VERSION&gt; is the version of <b>TSPSG</b> you downloaded. Now run</p>
166<div class="fragment"><pre class="fragment">
167lrelease tspsg.pro
168qmake tspsg.pro
169make
170</pre></div><p>In some cases you may need to type</p>
171<div class="fragment"><pre class="fragment">
172qmake tspsg.pro CONFIG+=release
173</pre></div><p>If make step finished without errors you can install <b>TSPSG</b> by running</p>
174<div class="fragment"><pre class="fragment">
175sudo make install
176</pre></div><p>or</p>
177<div class="fragment"><pre class="fragment">
178su
179make install
180</pre></div><p>depending on your distribution.</p>
181<p>By default, executable will go to <code>/usr/bin</code>, <code>COPYING.txt</code> and <code>README.txt</code> will go to <code>/usr/share/<b>TSPSG</b>,</code> translations will go <code>/usr/share/<b>TSPSG/l10n</b>,</code> all docs will go to <code>/usr/share/doc/<b>TSPSG-&lt;VERSION&gt;</code></b>.</p>
182<hr/>
183<h3><a class="anchor" id="i_s43">
184WINDOWS</a></h3>
185<dl class="note"><dt><b>Note:</b></dt><dd>Please, read the section <a class="el" href="install.html#i_s7">NOTES</a> after reading this section.</dd></dl>
186<h4><a class="anchor" id="i_s431">
187USING MINGW</a></h4>
188<p>Unpack the downloaded source code of <b>TSPSG</b> with your favourite compression software. Now launch the <em>Qt Command Prompt</em> from the Start Menu, navigate to the directory where you unpacked the source and run</p>
189<div class="fragment"><pre class="fragment">
190lrelease tspsg.pro
191qmake tspsg.pro CONFIG+=release
192mingw32-make
193</pre></div><dl class="note"><dt><b>Note:</b></dt><dd>Make process may fail with a crash of <code>windres.exe</code>. If you've run into this issue, please, read the section <a class="el" href="install.html#i_s61">WINDRES.EXE CRASH</a>.</dd></dl>
194<p>If make step finished without errors you can install <b>TSPSG</b> by running</p>
195<div class="fragment"><pre class="fragment">
196mingw32-make install
197</pre></div><p><b>TSPSG</b> will be installed to <code>%PROGRAMFILES%\<b>TSPSG</b> folder</code> (usually, it is <code>C:\Program Files\<b>TSPSG</code></b>).</p>
198<h4><a class="anchor" id="i_s432">
199USING VISUAL STUDIO</a></h4>
200<p>Unpack the downloaded source code of <b>TSPSG</b> with your favourite compression software. Now launch the <em>Visual Studio Command Prompt</em> from the Start Menu, navigate to the directory where you unpacked the source and run</p>
201<div class="fragment"><pre class="fragment">
202C:\Qt\bin\lrelease tspsg.pro
203C:\Qt\bin\qmake tspsg.pro CONFIG+=release
204nmake
205</pre></div><p>If make step finished without errors you can install <b>TSPSG</b> by running</p>
206<div class="fragment"><pre class="fragment">
207nmake install
208</pre></div><p><b>TSPSG</b> will be installed to <code>%PROGRAMFILES%\<b>TSPSG</b> folder</code> (usually, it is <code>C:\Program Files\<b>TSPSG</code></b>).</p>
209<hr/>
210<h3><a class="anchor" id="i_s44">
211WINDOWS CE/MOBILE</a></h3>
212<p>Unpack the downloaded source code of <b>TSPSG</b> with your favourite compression software. Now launch the <em>Visual Studio Command Prompt</em> from the Start Menu and run</p>
213<div class="fragment"><pre class="fragment">
214set PATH=C:\Qt\bin;\%PATH\%
215setcepaths wincewm50pocket-msvc2008
216</pre></div><p>Now navigate to the directory where you unpacked the source and run</p>
217<div class="fragment"><pre class="fragment">
218lrelease tspsg.pro
219qmake tspsg.pro CONFIG+=release
220nmake
221</pre></div><p>There is no automated installation process for Windows Mobile build. To install <b>TSPSG</b> on your PDA you need to create a folder on your device and copy the following files to it:</p>
222<ul>
223<li><b><b>TSPSG.exe</b> from</b> <code>release</code> folder in the source directory.</li>
224<li><b>QtCore4.dll</b> and <code>QtGui4.dll</code> from <code>C:\Qt\bin</code> folder.</li>
225<li><b>msvcr90.dll</b> from <code>C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\dll\armv4i</code> folder.</li>
226<li>all <b>*.qm</b> files from <code>l10n</code> folder in the source directory to <code>l10n</code> subfolder.</li>
227</ul>
228<hr/>
229<h2><a class="anchor" id="i_s45">
230SYMBIAN</a></h2>
231<p>Unpack the downloaded source code of <b>TSPSG</b> with your favourite compression software. Now launch the <em>Qt for Symbian Command Prompt</em> from the Start Menu, navigate to the directory where you unpacked the source and run</p>
232<div class="fragment"><pre class="fragment">
233lrelease tspsg.pro
234qmake tspsg.pro CONFIG+=release
235make release-gcce
236</pre></div><dl class="warning"><dt><b>Warning:</b></dt><dd>You need to unpack the source to the <em>same drive</em> as <em>Symbian SDK</em> and the path <em>must not contain any spaces</em> or <b>TSPSG</b> won't build.</dd></dl>
237<p>If make step finished without errors you can generate sis installation file by running</p>
238<div class="fragment"><pre class="fragment">
239make sis
240</pre></div><p>You'll get <code><b>TSPSG.sis</b> file</code> in the source directory. Copy it to your phone and run or install it using <em>Nokia PC Suite</em>.</p>
241<dl class="note"><dt><b>Note:</b></dt><dd>You need to install <em>Qt libraries</em> on your device before installing <b>TSPSG</b>. Usually, it should be enough to install <code>qt_installer.sis</code> from the Qt installation directory.</dd></dl>
242<p>Alternatively, if you have installed <em>Nokia Smart Installer</em><a class="anchor" id="cr2"></a><sup><a class="el" href="install.html#r2">[2]</a></sup> you can run</p>
243<div class="fragment"><pre class="fragment">
244make installer_sis
245</pre></div><p>You'll get an <code><b>TSPSG_installer.sis</b> that</code> will automatically download and install the required <em>Qt libraries</em> on <b>TSPSG</b> installation.</p>
246<dl class="note"><dt><b>Note:</b></dt><dd>Please, be aware that you have to sign the sis file to be able to install it on your device. You can use <em>Open Signed Online</em><a class="anchor" id="cr3"></a><sup><a class="el" href="install.html#r3">[3]</a></sup> to quickly sign the sis file for your device. Alternatively, you can try to enable the installation of self-signed files in the phone settings. Please, reffer to your phone manual on the instructions how to do this.</dd></dl>
247<hr/>
248<h3><a class="anchor" id="i_s46">
249OTHER PLATFORMS, SUPPORTED BY QT</a></h3>
250<p>While <b>TSPSG</b> is oficially supported only on <b>Linux</b>, <b>Windows</b> and <b>Windows Mobile</b> it should be possible to compile it on any platform, supported by <em>Qt</em>. To do so, please, refer to the section <a class="el" href="install.html#i_s41">GENERAL INSTALLATION PROCEDURE</a> for the general build and installation procedure.</p>
251<hr/>
252<hr/>
253<h2><a class="anchor" id="i_s5">
254UNINSTALLATION</a></h2>
255<p>Usually, it is enough to replace <code>install</code> parameter with <code>uninstall</code> in the installation command from the section <a class="el" href="install.html#i_s4">BUILDING AND INSTALLATION</a>. Alternatively, you can manually delete all installed <b>TSPSG</b> files and directories.</p>
256<hr/>
257<hr/>
258<h2><a class="anchor" id="i_s6">
259TROUBLESHOOTING</a></h2>
260<h3><a class="anchor" id="i_s61">
261WINDRES.EXE CRASH</a></h3>
262<p>When building under <b>Windows</b> using <em>minGW</em> toolchain make process may fail with <code>windres.exe</code> crash (access violation). This is a known bug in <code>windres.exe</code> regarding processing resource files with <code>UTF-8</code> (<code>cp65001</code>) encoding<a class="anchor" id="cr4"></a><sup><a class="el" href="install.html#r4">[4]</a></sup>. To be able to successfully build <b>TSPSG</b> you will need to download and replace <code>windres.exe</code> with a fixed version. To do this:</p>
263<ol type="1">
264<li>Open <a href="https://sourceforge.net/projects/mingw/files/">https://sourceforge.net/projects/mingw/files/</a> in your favourite browser.</li>
265<li>Find and download the latest version of <em>GNU Binutils</em>. At the time of writing this guide it was <code>binutils-2.20.1-2-mingw32-bin.tar.gz</code>.</li>
266<li>Unpack the file <code>bin\windres.exe</code> from the downloaded archive to <code>&lt;Your Qt installation path&gt;\mingw\bin\</code> replacing the existing one.</li>
267<li>Now run <div class="fragment"><pre class="fragment">
268mingw32-make distclean
269</pre></div> in the <b>TSPSG</b> directory and repeat the installation process.</li>
270</ol>
271<hr/>
272<hr/>
273<h2><a class="anchor" id="i_s7">
274NOTES</a></h2>
275<p><code>qmake</code> doesn't always enclose installation paths in quotes. This may cause some files not to be installed or removed when their path contains spaces. In this case it is safe to delete these files and <b>TSPSG</b> installation directory manually.</p>
276<hr/>
277<hr/>
278<h2><a class="anchor" id="i_s8">
279REFERNECES</a></h2>
280<ol type="1">
281<li><a class="anchor" id="r1"></a> <a class="el" href="install.html#cr1">^</a> <a href="http://qt.nokia.com/">http://qt.nokia.com/</a></li>
282<li><a class="anchor" id="r2"></a> <a class="el" href="install.html#cr1">^</a> <a href="http://qt.nokia.com/developer/nokia-smart-installer-for-symbian">http://qt.nokia.com/developer/nokia-smart-installer-for-symbian</a></li>
283<li><a class="anchor" id="r3"></a> <a class="el" href="install.html#cr2">^</a> <a href="https://www.symbiansigned.com/app/page/public/openSignedOnline.do">https://www.symbiansigned.com/app/page/public/openSignedOnline.do</a></li>
284<li><a class="anchor" id="r4"></a> <a class="el" href="install.html#cr3">^</a> <a href="http://sourceware.org/bugzilla/show_bug.cgi?id=10165">http://sourceware.org/bugzilla/show_bug.cgi?id=10165</a> </li>
285</ol>
286</div>
287<!--- window showing the filter options -->
288<div id="MSearchSelectWindow"
289     onmouseover="return searchBox.OnSearchSelectShow()"
290     onmouseout="return searchBox.OnSearchSelectHide()"
291     onkeydown="return searchBox.OnSearchSelectKey(event)">
292<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>
293
294<!-- iframe showing the search results (closed by default) -->
295<div id="MSearchResultsWindow">
296<iframe src="" frameborder="0" 
297        name="MSearchResults" id="MSearchResults">
298</iframe>
299</div>
300
301<hr size="1"/><address style="text-align: right;"><small>Generated on Wed Apr 28 02:47:14 2010 for TSPSG: TSP Solver and Generator by&nbsp;
302<a href="http://www.doxygen.org/index.html">
303<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
304</body>
305</html>
Note: See TracBrowser for help on using the repository browser.