Project

General

Profile

Installing Wt on FreeBSD » History » Version 12

Timo Pallach, 11/30/2017 01:12 PM
Added a section that describes the Wt build workflow for FreeBSD 11.1

1 4 Pieter Libin
h1. Installing Wt on FreeBSD
2
3 12 Timo Pallach
h2. FreeBSD 11.1-RELEASE-p5
4
5
Minimal installation prerequisites:
6
<pre>
7
pkg install boost-libs cmake
8
</pre>
9
10
Then download, extract and build Wt:
11
<pre>
12
fetch https://github.com/emweb/wt/archive/4.0.2.tar.gz
13
tar xzf 4.0.2.tar.gz
14
cd wt-4.0.2
15
mkdir build
16
cd build
17
cmake ..
18
make
19
make -C examples
20
</pre>
21
22
For hints on installing more dependency packages, see the Ubuntu installation instructions in this wiki.
23
24 11 Wim Dumon
h2. FreeBSD 10.0
25
26
Minimal installation prerequisites:
27
<pre>
28
pkg install boost-libs cmake gmake
29
</pre>
30
31
Then download, extract and build Wt:
32
<pre>
33
wget -c http://kent.dl.sourceforge.net/sourceforge/witty/wt-x.y.z.tar.gz
34
tar xvxf wt-x.y.z.tar.gz
35
cd wt-x.y.z
36
mkdir build
37
cd build
38
cmake .. 
39
gmake
40
gmake -C examples
41
</pre>
42
43
Warning: FreeBSD's default make does not work with CMake generated build files. Be sure to use gmake!
44
45
For hints on installing more dependency packages, see the Ubuntu installation instructions in this wiki.
46
47
h2. FreeBSD 7.2
48
49 4 Pieter Libin
Just a few notes to help FreeBSD users to build Wt. I tested those tips on FreeBSD 7.2.
50
51
* For the cmake options : 
52
53
<pre>
54
  cmake -DBOOST_DIR=/usr/local -DBOOST_FS_LIB_MT=/usr/local -DBOOST_FS_LIB_MT=/usr/local/lib/libboost_filesystem.so ../
55
</pre>
56
57 10 Koen Deforche
* This will build a non-threaded version of Wt, which is fine for playing around with the features, but a multi-threaded Wt build is to be preferred. Although boost for FreeBSD is multi-threaded, they do not have the signature -mt- in their library names, which is taken by the Wt build process as an indication that the boost libraries are multi-threaded. To force Wt to make a multi-threaded build, you need to edit your CMakeCache.txt and copy the value of each BOOST_xx_LIB variable to BOOST_xx_LIB_MT, specify the BOOST_THREAD_LIB_MT library, and add -lpthread to the WtFindBoost.txt cmake script (lines 223 - 229):
58 4 Pieter Libin
59
<pre>
60
 SET(BOOST_WT_LIBRARIES
61 8 Davis Peterson
        ${BOOST_THREAD_LIB_MT}
62
        ${BOOST_REGEX_LIB_MT}
63 4 Pieter Libin
        ${BOOST_SIGNALS_LIB_MT}
64
        ${BOOST_SYSTEM_LIB_MT}
65
        ${BOOST_PO_LIB_MT}
66
        ${BOOST_DT_LIB_MT} -lpthread)
67
</pre>
68
69
When running make, you should then get a line that says:
70
71
<pre>
72
 ** Enabling multi threading.
73
</pre>
74
75
* Be sure to specify "www" for the WEBUSER and WEBGROUP configuration variables. Otherwise Wt will use "apache" user/group which doesn't exist by default on FreeBSD.
76
77
* To compile some examples, you need to replace "png12" by "png" because the PNG libray is simply named "libpng.so" on FreeBSD.
78
79
I hope those simple tips will help FreeBSD users to install and try Wt.