summaryrefslogtreecommitdiff
path: root/docs/install.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/install.rst')
-rw-r--r--docs/install.rst129
1 files changed, 129 insertions, 0 deletions
diff --git a/docs/install.rst b/docs/install.rst
new file mode 100644
index 00000000..c5fea5d1
--- /dev/null
+++ b/docs/install.rst
@@ -0,0 +1,129 @@
1Install Instructions
2====================
3
4Linux
5---------
6
7First, install the build dependencies ::
8
9 bash apt-get install build-essential libtool autotools-dev automake libconfig-dev ncurses-dev cmake checkinstall
10
11.. note :: ``libconfig-dev`` should be >= 1.4.
12
13
14Then you'll need a recent version of `libsodium <https://github.com/jedisct1/libsodium>`_ ::
15
16 git clone git://github.com/jedisct1/libsodium.git
17 cd libsodium
18 git checkout tags/0.4.2
19 ./autogen.sh
20 ./configure && make check
21 sudo checkinstall --install --pkgname libsodium --pkgversion 0.4.2 --nodoc
22 sudo ldconfig``
23
24Finally, fetch the Tox source code and run cmake ::
25
26 git clone git://github.com/irungentoo/ProjectTox-Core.git
27 cd ProjectTox-Core && mkdir build && cd build
28 cmake ..
29
30Then you can build any of the files in `/testing`_ and `/other`_ that are currently
31supported on your platform by running ::
32
33 make name_of_c_file
34
35For example, to build `Messenger_test.c`_ you would run ::
36
37 make Messenger_test
38
39
40Or you could just build everything that is supported on your platform by
41running ::
42 bash make
43
44OS X
45------
46
47Homebrew
48~~~~~~~~~~
49::
50
51 brew install libtool automake autoconf libconfig libsodium cmake
52 cmake .
53 make
54 sudo make install
55
56Non-homebrew
57~~~~~~~~~~~~
58
59Much the same as Linux, remember to install the latest XCode and the
60developer tools (Preferences -> Downloads -> Command Line Tools). Users
61running Mountain Lion and the latest version of XCode (4.6.3) will also
62need to install libtool, automake and autoconf. They are easy enough to
63install, grab them from http://www.gnu.org/software/libtool/,
64http://www.gnu.org/software/autoconf/ and
65http://www.gnu.org/software/automake/, then follow these steps for each:
66
67::
68
69 ./configure
70 make
71 sudo make install
72
73Do not install them from macports (or any dependencies for that matter)
74as they get shoved in the wrong directory and make your life more
75annoying.
76
77Another thing you may want to install is the latest gcc, this caused me
78a few problems as XCode from 4.3 no longer includes gcc and instead uses
79LLVM-GCC, a nice install guide can be found at
80http://caiustheory.com/install-gcc-421-apple-build-56663-with-xcode-42
81
82Windows
83---------
84
85You should install:
86
87* `MinGW <http://sourceforge.net/projects/mingw/>`_'s C compiler
88* `CMake <http://www.cmake.org/cmake/resources/software.html>`_
89
90You have to `modify your PATH environment
91variable <http://www.computerhope.com/issues/ch000549.htm>`_ so that it
92contains MinGW's bin folder path. With default settings, the bin folder
93is located at ``C:\MinGW\bin``, which means that you would have to
94append ``;C:\MinGW\bin`` to the PATH variable.
95
96Then you should either clone this repo by using git, or just download a
97`zip of current Master
98branch <https://github.com/irungentoo/ProjectTox-Core/archive/master.zip>`_
99and extract it somewhere.
100
101After that you should get precompiled package of libsodium from
102`here <https://download.libsodium.org/libsodium/releases/libsodium-win32-0.4.2.tar.gz>`_
103and extract the archive into this repo's root. That is, ``sodium``
104folder should be along with ``core``, ``testing`` and other folders.
105
106Navigate in ``cmd`` to this repo and run::
107
108 mkdir build && cd build
109 cmake -G "MinGW Makefiles" ..
110
111Then you can build any of the `/testing`_ and `/other`_ that are currently
112supported on your platform by running::
113
114 mingw32-make name_of_c_file
115
116For example, to build `Messenger_test.c`_ you would run::
117
118 mingw32-make Messenger_test``
119
120Or you could just build everything that is supported on your platform by
121running::
122
123 mingw32-make
124
125
126.. _/testing: https://github.com/irungentoo/ProjectTox-Core/tree/master/testing
127.. _/other: https://github.com/irungentoo/ProjectTox-Core/tree/master/other
128
129.. _Messenger_test.c: https://github.com/irungentoo/ProjectTox-Core/tree/master/other/Messanger_test.c