TSP Solver and Generator
TSPSG Installation Guide
Author
Copyright © 2007-2016 Oleksii Serdiuk <contacts[at]oleksii[dot]name>
Id
0c8813f 2016-04-18 23:45:08 +0200 Oleksii Serdiuk
URL
http://tspsg.info/

Thank you for trying TSPSG. This document will guide you through the steps necessary to compile and run TSPSG.


Table of Contents

  1. REQUIREMENTS
  2. ASSUMPTIONS
  3. SUPPORTED PLATFORMS
  4. BUILDING AND INSTALLATION
    1. GENERAL INSTALLATION PROCEDURE
    2. GENERAL INSTALLATION PROCEDURE
    3. LINUX/UNIX/BSD
    4. WINDOWS
      1. USING MINGW
      2. USING VISUAL STUDIO
    5. WINDOWS CE/MOBILE
    6. SYMBIAN
    7. OTHER PLATFORMS, SUPPORTED BY QT
  5. UNINSTALLATION
  6. TROUBLESHOOTING
    1. WINDRES.EXE CRASH
  7. NOTES
  8. REFERNECES

REQUIREMENTS

To be able compile TSPSG you need to have Qt libraries[1]. The minimum supported version of Qt is 4.5.0. The recommended version is 4.6.x or higher.

Note
Please, note that there will be some regressions in functionality if your version of Qt is lower than the recommended.


ASSUMPTIONS

This guide assumes that you already have Qt libraries and all necessary prerequisites installed.

Also, the following assumptions are made:



SUPPORTED PLATFORMS

TSPSG is oficially supported and tested on the following platforms:



BUILDING AND INSTALLATION

GENERAL INSTALLATION PROCEDURE

To be able ot build TSPSG you need to have the following Qt modules: QtCore, QtGui and QtSvg. The first two are required, the last one is optional. To get support for additional image formats (i.e., JPEG and TIFF) you'll additionally need corresponding Qt imageformats plugins.

If you want to build TSPSG without SVG support add nosvg to qmake CONFIG parameter, so that qmake command will typically be:

qmake CONFIG+=release CONFIG+=nosvg

This way you will not depend on QtSvg module but will not be able to export solution graph in SVG format.

TSPSG uses qmake PREFIX parameter to determine installation path for make install command. If you don't specify it when running qmake, it will be assigned the default value depending on the platform:

PlatformDefault PREFIX value
Linux/UNIX/BSD /usr
Windows %PROGRAMFILES% environment variable (usually, it is C:\Program Files)
Windows CE/Mobile\Program Files
Symbian <ignored>
Note
Please, note that there are no installation and/or packaging rules for MacOS and other platforms not mentioned in this table.

By default, TSPSG uses precompiled header when being built. If you experience problems with it you may add CONFIG+=nopch parameter to qmake to disable the generation and use of the precompiled header.


GENERAL INSTALLATION PROCEDURE

On most platforms the general building and installation procedure is:

  1. Run lrelease to generate binary translation files (.qm) from the source (.ts).
  2. Run qmake with CONFIG+=release parameter to generate makefiles.
  3. Run make utility (e.g., make, nmake, mingw32-make) to build TSPSG.
  4. Run make utility with install parameter.
Note
It is important to run lrelease before qmake, or qmake will not "pick up" the translations when generating installation rules.

LINUX/UNIX/BSD

Open a shell, navigate to the directory where you have TSPSG source downloaded and type

tar xvjf tspsg-<VERSION>-src.tar.bz2
cd tspsg-<VERSION>-src

where <VERSION> is the version of TSPSG you downloaded. Now run

lrelease tspsg.pro
qmake tspsg.pro
make

In some cases you may need to type

qmake tspsg.pro CONFIG+=release

If make step finished without errors you can install TSPSG by running

sudo make install

or

su
make install

depending on your distribution.

The executable goes to <PREFIX>/bin; COPYING, ChangeLog.txt, README.txt and INSTALL.txt go to <PREFIX>/share/doc/TSPSG-<VERSION>.


WINDOWS

TSPSG will be installed to <PREFIX>\TSPSG folder.

Note
Please, read the section NOTES after reading this section.

USING MINGW

Unpack the downloaded source code of TSPSG with your favourite compression software. Now launch the Qt Command Prompt from the Start Menu, navigate to the directory where you unpacked the source and run

lrelease tspsg.pro
qmake tspsg.pro CONFIG+=release
mingw32-make
Note
Make process may fail with a crash of windres.exe. If you've run into this issue, please, read the section WINDRES.EXE CRASH.

If make step finished without errors you can install TSPSG by running

mingw32-make install

USING VISUAL STUDIO

Unpack the downloaded source code of TSPSG with your favourite compression software. Now launch the Visual Studio Command Prompt from the Start Menu, navigate to the directory where you unpacked the source and run

C:\Qt\bin\lrelease tspsg.pro
C:\Qt\bin\qmake tspsg.pro CONFIG+=release
nmake

If make step finished without errors you can install TSPSG by running

nmake install

WINDOWS CE/MOBILE

Unpack the downloaded source code of TSPSG with your favourite compression software. Now launch the Visual Studio Command Prompt from the Start Menu and run

set PATH=C:\Qt\bin;\%PATH\%
setcepaths wincewm50pocket-msvc2008

Now navigate to the directory where you unpacked the source and run

lrelease tspsg.pro
qmake tspsg.pro CONFIG+=release
nmake

There is no automated installation process for Windows Mobile build. To install TSPSG on your PDA you need to create a folder on your device and copy the following files to it:


SYMBIAN

Unpack the downloaded source code of TSPSG with your favourite compression software. Now launch the Qt for Symbian Command Prompt from the Start Menu, navigate to the directory where you unpacked the source and run

lrelease tspsg.pro
qmake tspsg.pro CONFIG+=release
make release-gcce
Warning
You need to unpack the source to the same drive as Symbian SDK and the path must not contain any spaces or TSPSG won't build.

If make step finished without errors you can generate sis installation file by running

make sis

You'll get tspsg.sis file in the source directory. Copy it to your phone and run or install it using Nokia PC Suite.

Note
You need to install Qt libraries on your device before installing TSPSG. Usually, it should be enough to install qt_installer.sis from the Qt installation directory.

Alternatively, if you have installed Nokia Smart Installer[2] you can run

make installer_sis

You'll get an tspsg_installer.sis that will automatically download and install the required Qt libraries on TSPSG installation.

Note
Please, be aware that you have to sign the sis file to be able to install it on your device. You can use Open Signed Online[3] 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.

OTHER PLATFORMS, SUPPORTED BY QT

While TSPSG is oficially supported only on Linux, Windows and Windows Mobile it should be possible to compile it on any platform, supported by Qt. To do so, please, refer to the section GENERAL INSTALLATION PROCEDURE for the general build and installation procedure.



UNINSTALLATION

Usually, it is enough to replace install parameter with uninstall in the installation command from the section BUILDING AND INSTALLATION. Alternatively, you can manually delete all installed TSPSG files and directories.



TROUBLESHOOTING

WINDRES.EXE CRASH

When building under Windows using minGW toolchain make process may fail with windres.exe crash (access violation). This is a known bug in windres.exe regarding processing resource files with UTF-8 (cp65001) encoding[4]. To be able to successfully build TSPSG you will need to download and replace windres.exe with a fixed version. To do this:

  1. Open https://sourceforge.net/projects/mingw/files/ in your favourite browser.
  2. Find and download the latest version of GNU Binutils. At the time of writing this guide it was binutils-2.20.1-2-mingw32-bin.tar.gz.
  3. Unpack the file bin\windres.exe from the downloaded archive to <Your Qt installation path>\mingw\bin\ replacing the existing one.
  4. Now run
    mingw32-make distclean
    
    in the TSPSG directory and repeat the installation process.


NOTES

qmake 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 TSPSG installation directory manually.



REFERNECES

  1. ^http://qt.nokia.com/
  2. ^http://qt.nokia.com/developer/nokia-smart-installer-for-symbian
  3. ^https://www.symbiansigned.com/app/page/public/openSignedOnline.do
  4. ^http://sourceware.org/bugzilla/show_bug.cgi?id=10165