This repository was archived by the owner on Nov 7, 2019. It is now read-only.
-
Couldn't load subscription status.
- Fork 109
processone/exmpp
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Exmpp is an Erlang application which provides the modules to ease the
development of an XMPP/Jabber server or client.
== Table of contents ==
I. How to build and install
1. Requirements
2. Build and install
3. Building examples
4. Using an alternate Erlang environment
5. Using another C compiler
6. Creating Autotools files
I. How to build and install
===========================
1. Requirements
---------------
o Erlang/OTP (REQUIRED)
A full Erlang environment is recommended but only ERTS and
erl_interface are required.
. Minimum version: R12B-5
o C compiler (REQUIRED)
Exmpp contains Erlang port drivers which are written in C.
Tested C compilers include:
. GNU Compiler Collection (gcc)
. Intel C++ Compiler (icc)
. GCC frontend for LLVM (llvm-gcc)
. Microsoft Visual C++ (cl)
C compilers known not to work:
. clang frontend for LLVM (ccc)
o XML parsing library (REQUIRED)
Tested libraries are:
. Expat: recommended. Tested: 2.0.1
. LibXML2: only experimental support.
o OpenSSL (optional)
It's the only TLS engine supported for now.
. Tested version: 0.9.8e
o zlib (optional)
It's the only compression engine supported for now.
. Tested version: 1.2.3
o eunit (optional)
To be able to use the testsuite, this Erlang application is required.
. Tested version: 2.0
2. Build and install
--------------------
Exmpp uses the Autotools. Therefore the process is quite common:
$ ./configure
$ make
$ sudo make install
Building outside of the source directory is supported:
$ mkdir exmpp-build
$ cd exmpp-build
exmpp-build$ /path/to/exmpp-src/configure
exmpp-build$ make
exmpp-build$ sudo make install
By default, Exmpp is installed in Erlang lib directory. You may select
another directory with the --prefix argument to the configure script:
$ ./configure --prefix=/install/exmpp/here
Exmpp will be installed in "/install/exmpp/here/exmpp-$VERSION".
3. Building examples
--------------------
You can find example code in the "examples" directory.
These modules may be built for you with the --enable-examples configure
argument:
$ ./configure --enable-examples
For now, they're not installed.
4. Using an alternate Erlang environment
----------------------------------------
If Erlang cannot be found by the configure script of if you prefer to
use a specific Erlang environment, you may indicate an alternate Erlang
root directory with the --with-erlang argument:
$ ./configure --with-erlang=/path/to/alternate/erlang
Another way is to set the following configure variables:
$ ./configure ERL=/path/to/bin/erl ERLC=/path/to/bin/ERLC \
ESCRIPT=/path/to/bin/escript
5. Using another C compiler
---------------------------
You may specify another C compiler to use at configure time. For
instance, to use GCC frontend for LLVM:
$ ./configure CC=llvm-gcc
$ make
6. Creating Autotools files
---------------------------
If you work on a Subversion checkout, you'll have to generate some files
such as the configure script and Makefile.in. For this, you'll have to
install the following autotools:
o autoconf 2.60 or higher (read below for 2.62 and 2.63)
o automake 1.9 or later
o libtool 1.5 or later
To generate the files, run:
$ autoreconf -vif
After that, you can use the standard procedure:
$ ./configure
$ make
WARNING: Erlang support in old autoconf 2.62 and 2.63 was broken! If you
must stick to these versions, you must apply the following patch to
'erlang.m4' in 'share/autoconf-2.62/autoconf' (patch taken from official
autoconf GIT repository):
----8<----
--- erlang.m4-broken 2009-01-14 17:54:41.000000000 +0100
+++ erlang.m4 2009-01-14 16:51:57.000000000 +0100
@@ -124,7 +124,7 @@
m4_define([AC_LANG(Erlang)],
[ac_ext=erl
ac_compile='$ERLC $ERLCFLAGS -b beam conftest.$ac_ext >&AS_MESSAGE_LOG_FD'
-ac_link='$ERLC $ERLCFLAGS -b beam conftest.$ac_ext >&AS_MESSAGE_LOG_FD ; echo "#!/bin/sh" > conftest$ac_exeext ; AS_ECHO(["\"$ERL\" -run conftest start -run init stop -noshell"]) >> conftest$ac_exeext ; chmod +x conftest$ac_exeext'
+ac_link='$ERLC $ERLCFLAGS -b beam conftest.$ac_ext >&AS_MESSAGE_LOG_FD ; echo "[#]!/bin/sh" > conftest$ac_exeext ; AS_ECHO(["\"$ERL\" -run conftest start -run init stop -noshell"]) >> conftest$ac_exeext ; chmod +x conftest$ac_exeext'
])
----8<----
After applying the patch, you must run the following commands:
$ cd [...]/share/autoconf-2.62/autoconf
$ autom4te --language=autoconf --freeze --output=autoconf.m4f
About
Erlang XMPP library
Resources
Stars
Watchers
Forks
Packages 0
No packages published