author | Matthew Wild <mwild1@gmail.com> |
Thu, 13 Sep 2018 14:46:24 +0100 | |
changeset 9301 | 2d71040a959f |
parent 7362 | a5a080c12c96 |
child 12226 | 61592927335b |
permissions | -rw-r--r-- |
5407 | 1 |
(This file was created from |
7362
a5a080c12c96
Update every link to the documentation to use HTTPS
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
5407
diff
changeset
|
2 |
https://prosody.im/doc/installing_from_source on 2013-03-31) |
1192
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 |
|
5407 | 4 |
====== Installing from source ====== |
1192
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 |
==== Dependencies ==== |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 |
There are a couple of libraries which Prosody needs installed before |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 |
you can build it. These are: |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 |
|
5407 | 9 |
* lua5.1: The Lua 5.1 interpreter |
1192
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 |
* liblua5.1: Lua 5.1 library |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 |
* libssl 0.9.8: OpenSSL |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 |
* libidn11: GNU libidn library, version 1.1 |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 |
|
5407 | 14 |
These can be installed on Debian/Ubuntu with the packages: lua5.1 |
15 |
liblua5.1-dev libidn11-dev libssl-dev |
|
4885
8df3e709f8b7
INSTALL: Update with changes from wiki.
Kim Alvefur <zash@zash.se>
parents:
1192
diff
changeset
|
16 |
|
8df3e709f8b7
INSTALL: Update with changes from wiki.
Kim Alvefur <zash@zash.se>
parents:
1192
diff
changeset
|
17 |
On Mandriva try: urpmi lua liblua-devel libidn-devel libopenssl-devel |
1192
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 |
On other systems... good luck, but please let me know of the best way |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 |
of getting the dependencies for your system and I can add it here. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
22 |
==== configure ==== |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
23 |
The first step of building is to run the configure script. This |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
24 |
creates a file called 'config.unix' which is used by the next step to |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 |
control aspects of the build process. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 |
All options to configure can be seen by running ./configure --help. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
28 |
Sometimes you won't need to pass any parameters to configure, but on |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
29 |
most systems you shall. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
30 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 |
To make this a little easier, there are a few presets which configure |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
32 |
accepts. You can load a preset using: |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
33 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
34 |
./configure --ostype=PRESET |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
35 |
|
5407 | 36 |
Where PRESET can currently be one of: 'debian', 'macosx' or (in 0.8 |
37 |
and later) 'freebsd' |
|
1192
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
38 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
39 |
==== make ==== |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
40 |
Once you have run configure successfully, then you can simply run: |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
41 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
42 |
make |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
43 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
44 |
Simple? :-) |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
45 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
46 |
If you do happen to have problems at this stage, it is most likely |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
47 |
due to the build process not finding the dependencies. Ensure you |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
48 |
have them installed, and in the standard library paths for your |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
49 |
system. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
50 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
51 |
For more help, just ask ;-) |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
52 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
53 |
==== install ==== |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
54 |
At this stage you should be able to run Prosody simply with: |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
55 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
56 |
./prosody |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
57 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
58 |
There is no problem with this, it is actually the easiest way to do |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
59 |
development, as it doesn't spread parts around your system, and you |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
60 |
can keep multiple versions around in their own directories without |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
61 |
conflict. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
62 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
63 |
Should you wish to install it system-wide however, simply run: |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
64 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
65 |
sudo make install |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
66 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
67 |
...it will install into /usr/local/ by default. To change this you |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
68 |
can pass to the initial ./configure using the 'prefix' option, or |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
69 |
edit config.unix directly. If the new path doesn't require root |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
70 |
permission to write to, you also won't need (or want) to use 'sudo' |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
71 |
in front of the 'make install'. |
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
72 |
|
b1b42ce4f0f6
Finally add README and INSTALL files
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
73 |
Have fun, and see you on Jabber! |