Installing Wt on QNX » History » Version 2
  Wim Dumon, 03/23/2011 06:20 PM 
  
| 1 | 1 | Wim Dumon | h1. Installing Wt on QNX  | 
|---|---|---|---|
| 2 | |||
| 3 | PRELIMINARY: this document is not yet finished. It is intended for the upcoming Wt version 3.1.9.  | 
||
| 4 | |||
| 5 | These are the guidelines to install Wt on Qnx. The procedure is very similar to other POSIX systems, but you need to work around some bugs in some libraries.  | 
||
| 6 | |||
| 7 | h2. Build boost for QNX.  | 
||
| 8 | |||
| 9 | These instructions and the patch below are for boost 1.46.1, the most recent boost at the time of writing of this document.  | 
||
| 10 | |||
| 11 | In general, boost seems to work pretty ok with Qnx. To work around some compiletime and runtime problems, you should apply this patch:  | 
||
| 12 | |||
| 13 | <pre>  | 
||
| 14 | diff -ru boost_1_46_1/libs/filesystem/v3/src/operations.cpp ../boost_1_46_1/libs/filesystem/v3/src/operations.cpp  | 
||
| 15 | --- boost_1_46_1/libs/filesystem/v3/src/operations.cpp 2011-03-03 18:00:21.000000000 +0000  | 
||
| 16 | +++ ../boost_1_46_1/libs/filesystem/v3/src/operations.cpp 2011-03-22 15:40:32.000000000 +0000  | 
||
| 17 | @@ -32,7 +32,7 @@  | 
||
| 18 | |||
| 19 | #if !(defined(__HP_aCC) && defined(_ILP32) && \  | 
||
| 20 | !defined(_STATVFS_ACPP_PROBLEMS_FIXED))  | 
||
| 21 | -#define _FILE_OFFSET_BITS 64 // at worst, these defines may have no effect,  | 
||
| 22 | +//#define _FILE_OFFSET_BITS 64 // at worst, these defines may have no effect,  | 
||
| 23 | #endif  | 
||
| 24 | #if !defined(__PGI)  | 
||
| 25 | #define __USE_FILE_OFFSET64 // but that is harmless on Windows and on POSIX  | 
||
| 26 | @@ -182,6 +182,7 @@  | 
||
| 27 | #include <string>  | 
||
| 28 | #include <cstring>  | 
||
| 29 | #include <cstdio> // for remove, rename  | 
||
| 30 | +#include <stdio.h>  | 
||
| 31 | #include <cerrno>  | 
||
| 32 | #include <cassert>  | 
||
| 33 | // #include <iostream> // for debugging only; comment out when not in use  | 
||
| 34 | </pre>  | 
||
| 35 | |||
| 36 | This patch has been submitted to boost: https://svn.boost.org/trac/boost/ticket/5355  | 
||
| 37 | |||
| 38 | Then, bootstrap and compile boost:  | 
||
| 39 | <pre>  | 
||
| 40 | # cd boost_1_46_1  | 
||
| 41 | # ./bootstrap --with-libraries=date_time,filesystem,program_options,regex,signals,system,thread  | 
||
| 42 | # ./bjam toolset=qcc variant=release link=static threading=multi install  | 
||
| 43 | </pre>  | 
||
| 44 | |||
| 45 | h2. Build cmake for QNX  | 
||
| 46 | |||
| 47 | Just follow the instructions in the Readme.txt file. I built cmake 2.8.4 without problems:  | 
||
| 48 | |||
| 49 | <pre>  | 
||
| 50 | # ./bootstrap  | 
||
| 51 | # make  | 
||
| 52 | # make install  | 
||
| 53 | </pre>  | 
||
| 54 | |||
| 55 | h2. Build Wt for QNX  | 
||
| 56 | |||
| 57 | Download Wt, and untar it in a directory wt-x.y.z. There's one important catch: cmake will by default select a different compiler than qcc to build Wt - and we noticed this doesn't work very well. Since we have built boost with qcc, we'll also build Wt with qcc.  | 
||
| 58 | |||
| 59 | <pre>  | 
||
| 60 | # tar xvzf wt-3.1.8.tar.gz  | 
||
| 61 | # cd wt-3.1.8  | 
||
| 62 | # mkdir build  | 
||
| 63 | # cd build  | 
||
| 64 | # cmake -DCMAKE_C_COMPILER=qcc -DCMAKE_CXX_COMPILER=QCC ..  | 
||
| 65 | 2 | Wim Dumon | # make  | 
| 66 | # cd examples  | 
||
| 67 | # make  | 
||
| 68 | 1 | Wim Dumon | </pre>  |