summaryrefslogtreecommitdiff
path: root/INSTALL.md
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL.md')
-rw-r--r--INSTALL.md218
1 files changed, 164 insertions, 54 deletions
diff --git a/INSTALL.md b/INSTALL.md
index e82fe5bf..387b83a1 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -7,6 +7,14 @@
7 - [Non-Homebrew](#non-homebrew) 7 - [Non-Homebrew](#non-homebrew)
8 - [Windows](#windows) 8 - [Windows](#windows)
9 9
10- [Additional](#additional)
11 - [Advance configure] (#aconf)
12 - [A/V support](#av)
13 - [libtoxav] (#libtoxav)
14 - [Test phone] (#phone)
15 - [Bootstrap daemon] (#bootstrapd)
16 - [nTox] (#ntox)
17
10<a name="installation" /> 18<a name="installation" />
11##Installation 19##Installation
12 20
@@ -20,18 +28,14 @@ Note: package fetching commands may vary by OS.
20On Ubuntu: 28On Ubuntu:
21 29
22```bash 30```bash
23sudo apt-get install build-essential libtool autotools-dev automake libconfig-dev ncurses-dev checkinstall check git libswscale-dev libsdl-dev libopenal-dev libopus-dev libvpx-dev yasm 31sudo apt-get install build-essential libtool autotools-dev automake checkinstall check git yasm
24```
25If you get the "Unable to locate package libopus-dev" message, add the following ppa
26```bash
27sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo apt-get update && sudo apt-get dist-upgrade
28``` 32```
29 33
30On Fedora: 34On Fedora:
31 35
32```bash 36```bash
33yum groupinstall "Development Tools" 37yum groupinstall "Development Tools"
34yum install libtool autoconf automake libconfig-devel ncurses-devel check check-devel 38yum install libtool autoconf automake check check-devel
35``` 39```
36 40
37On SunOS: 41On SunOS:
@@ -73,22 +77,13 @@ make check
73sudo make install 77sudo make install
74cd .. 78cd ..
75``` 79```
80
76If your default prefix is /usr/local and you happen to get an error that says "error while loading shared libraries: libtoxcore.so.0: cannot open shared object file: No such file or directory", then you can try running ```sudo ldconfig```. If that doesn't fix it, run: 81If your default prefix is /usr/local and you happen to get an error that says "error while loading shared libraries: libtoxcore.so.0: cannot open shared object file: No such file or directory", then you can try running ```sudo ldconfig```. If that doesn't fix it, run:
77``` 82```
78echo '/usr/local/lib/' | sudo tee -a /etc/ld.so.conf.d/locallib.conf 83echo '/usr/local/lib/' | sudo tee -a /etc/ld.so.conf.d/locallib.conf
79sudo ldconfig 84sudo ldconfig
80``` 85```
81 86
82You also need recent [FFmpeg](https://git.videolan.org/?p=ffmpeg.git) libraries:
83```bash
84git clone git://source.ffmpeg.org/ffmpeg.git
85cd ffmpeg
86git checkout n2.0.2
87./configure --prefix=`pwd`/install --disable-programs
88make && make install
89cd ..
90```
91
92Then clone this repo and generate makefile: 87Then clone this repo and generate makefile:
93```bash 88```bash
94git clone git://github.com/irungentoo/ProjectTox-Core.git 89git clone git://github.com/irungentoo/ProjectTox-Core.git
@@ -98,17 +93,7 @@ autoreconf -i
98make 93make
99sudo make install 94sudo make install
100``` 95```
101Advance configure options: 96
102 - --prefix=/where/to/install
103 - --with-libsodium-headers=/path/to/libsodium/include/
104 - --with-libsodium-libs=/path/to/sodiumtest/lib/
105 - --enable-silent-rules less verbose build output (undo: "make V=1")
106 - --disable-silent-rules verbose build output (undo: "make V=0")
107 - --disable-tests build unit tests (default: auto)
108 - --disable-ntox build nTox client (default: auto)
109 - --disable-dht-bootstrap-daemon build DHT bootstrap daemon (default: auto)
110 - --enable-shared[=PKGS] build shared libraries [default=yes]
111 - --enable-static[=PKGS] build static libraries [default=yes]
112 97
113<a name="osx" /> 98<a name="osx" />
114###OS X: 99###OS X:
@@ -153,17 +138,6 @@ make
153make install 138make install
154``` 139```
155 140
156Advance configure options:
157 - --prefix=/where/to/install
158 - --with-libsodium-headers=/path/to/libsodium/include/
159 - --with-libsodium-libs=/path/to/sodiumtest/lib/
160 - --enable-silent-rules less verbose build output (undo: "make V=1")
161 - --disable-silent-rules verbose build output (undo: "make V=0")
162 - --disable-tests build unit tests (default: auto)
163 - --disable-ntox build nTox client (default: auto)
164 - --disable-dht-bootstrap-daemon build DHT bootstrap daemon (default: auto)
165 - --enable-shared[=PKGS] build shared libraries [default=yes]
166 - --enable-static[=PKGS] build static libraries [default=yes]
167 141
168<a name="non-homebrew" /> 142<a name="non-homebrew" />
169####Non-homebrew: 143####Non-homebrew:
@@ -194,17 +168,6 @@ autoreconf -i
194make 168make
195make install 169make install
196``` 170```
197Advance configure options:
198 - --prefix=/where/to/install
199 - --with-libsodium-headers=/path/to/libsodium/include/
200 - --with-libsodium-libs=/path/to/sodiumtest/lib/
201 - --enable-silent-rules less verbose build output (undo: "make V=1")
202 - --disable-silent-rules verbose build output (undo: "make V=0")
203 - --disable-tests build unit tests (default: auto)
204 - --disable-ntox build nTox client (default: auto)
205 - --disable-dht-bootstrap-daemon build DHT bootstrap daemon (default: auto)
206 - --enable-shared[=PKGS] build shared libraries [default=yes]
207 - --enable-static[=PKGS] build static libraries [default=yes]
208 171
209Do not install them from macports (or any dependencies for that matter) as they get shoved in the wrong directory 172Do not install them from macports (or any dependencies for that matter) as they get shoved in the wrong directory
210(or the wrong version gets installed) and make your life more annoying. 173(or the wrong version gets installed) and make your life more annoying.
@@ -246,6 +209,23 @@ autoreconf -i
246make 209make
247make install 210make install
248``` 211```
212
213<a name="Clients" />
214####Clients:
215While [Toxic](https://github.com/tox/toxic) is no longer in core, a list of Tox clients are located in our [wiki](http://wiki.tox.im/client)
216
217
218
219
220
221<a name="additional" />
222##Additional
223
224
225
226<a name="aconf" />
227###Advance configure:
228
249Advance configure options: 229Advance configure options:
250 - --prefix=/where/to/install 230 - --prefix=/where/to/install
251 - --with-libsodium-headers=/path/to/libsodium/include/ 231 - --with-libsodium-headers=/path/to/libsodium/include/
@@ -253,11 +233,141 @@ Advance configure options:
253 - --enable-silent-rules less verbose build output (undo: "make V=1") 233 - --enable-silent-rules less verbose build output (undo: "make V=1")
254 - --disable-silent-rules verbose build output (undo: "make V=0") 234 - --disable-silent-rules verbose build output (undo: "make V=0")
255 - --disable-tests build unit tests (default: auto) 235 - --disable-tests build unit tests (default: auto)
256 - --disable-ntox build nTox client (default: auto) 236 - --disable-av disable A/V support (default: auto) see: [libtoxav](#libtoxav)
257 - --disable-dht-bootstrap-daemon build DHT bootstrap daemon (default: auto) 237 - --enable-phone build phone (default: no) see: [Test phone](#phone)
238 - --enable-ntox build nTox client (default: no) see: [nTox](#ntox)
239 - --enable-daemon build DHT bootstrap daemon (default: no) see: [Bootstrap daemon](#bootstrapd)
258 - --enable-shared[=PKGS] build shared libraries [default=yes] 240 - --enable-shared[=PKGS] build shared libraries [default=yes]
259 - --enable-static[=PKGS] build static libraries [default=yes] 241 - --enable-static[=PKGS] build static libraries [default=yes]
260 242
261<a name="Clients" /> 243
262####Clients: 244<a name="av" />
263While [Toxic](https://github.com/tox/toxic) is no longer in core, a list of Tox clients are located in our [wiki](http://wiki.tox.im/client) 245###A/V support:
246
247<a name="libtoxav" />
248####libtoxav:
249
250'libtoxav' is needed for A/V support and it's enabled by default. You can disable it by adding --disable-av argument to ./configure script like so:
251```bash
252./configure --disable-av
253```
254There are 2 dependencies required for libtoxav: libopus and libvpx. If they are not installed A/V support is dropped.
255
256Install on fedora:
257```bash
258yum install libopus-devel libvpx-devel
259```
260
261Install on ubuntu:
262```bash
263sudo apt-get install libopus-dev libvpx-dev
264```
265If you get the "Unable to locate package libopus-dev" message, add the following ppa and try again:
266```bash
267sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo apt-get update && sudo apt-get dist-upgrade
268```
269
270Install from source (example for most unix-like OS's):
271
272libvpx:
273```bash
274git clone http://git.chromium.org/webm/libvpx.git
275cd libvpx
276./configure
277make -j3
278sudo make install
279cd ..
280```
281libopus:
282```bash
283wget http://downloads.xiph.org/releases/opus/opus-1.0.3.tar.gz
284tar xvzf opus-1.0.3.tar.gz
285cd opus-1.0.3
286./configure
287make -j3
288sudo make install
289cd ..
290```
291
292
293<a name="phone" />
294####Test phone:
295
296Test phone is disabled by default. You can enable it by adding --enable-phone argument to ./configure script like so:
297```bash
298./configure --enable-phone
299```
300It can be compiled with or without video capturing enabled. There are 4 dependencies for phone: openal, ffmpeg, sdl and swscale. If any of the later 3 are not installed video support is dropped.
301
302Install on fedora:
303```bash
304yum install libopenal-devel libswscale-devel SDL*
305```
306
307Install on ubuntu:
308```bash
309sudo apt-get install libopenal-dev libswscale-dev libsdl-dev
310```
311
312Now grap recent [FFmpeg](https://git.videolan.org/?p=ffmpeg.git) libraries and install them:
313```bash
314git clone git://source.ffmpeg.org/ffmpeg.git
315cd ffmpeg
316git checkout n2.0.2
317./configure --prefix=`pwd`/install --disable-programs
318make && make install
319cd ..
320```
321
322You are ready to compile phone!
323
324
325
326
327<a name="bootstrapd" />
328###Bootstrap daemon:
329
330Daemon is disabled by default. You can enable it by adding --enable-daemon argument to ./configure script like so:
331```bash
332./configure --enable-daemon
333```
334There dependency required for bootstrap daemon: libconfig.
335
336Install on fedora:
337```bash
338yum install libconfig-devel
339```
340
341Install on ubuntu:
342```bash
343sudo apt-get install libconfig-dev
344```
345
346OS X homebrew:
347```
348brew install libconfig
349```
350OS X non-homebrew:
351Grab the following [package] (http://www.hyperrealm.com/libconfig/), uncompress and install
352
353
354
355<a name="ntox" />
356###nTox test cli:
357
358nTox is disabled by default. You can enable it by adding --enable-ntox argument to ./configure script like so:
359```bash
360./configure --enable-ntox
361```
362There dependency required for nTox: libncurses.
363
364Install on fedora:
365```bash
366yum install ncurses-devel
367```
368
369Install on ubuntu:
370```bash
371sudo apt-get install ncurses-dev
372```
373