I'm trying to build ejabberd_2.1.2-3, but run into an error. Here's my process thus far, with "interesting" outputs along the way (that determine required dependencies, etc). The blocker is at the end.
sudo su
mkdir ejabberd-src
cd ejabberd-src
wget http://ftp.de.debian.org/debian/pool/main/e/ejabberd/ejabberd_2.1.2-3.dsc
wget http://ftp.de.debian.org/debian/pool/main/e/ejabberd/ejabberd_2.1.2.orig...
wget http://ftp.de.debian.org/debian/pool/main/e/ejabberd/ejabberd_2.1.2-3.di...
dpkg-source -x ejabberd_2.1.2-3.dsc
cd ejabberd-2.1.2
dpkg-buildpackage -rfakeroot -b
OUTPUTS: dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 7.3~) quilt erlang-nox erlang-dev (>= 1:13.b) libexpat1-dev libssl-dev zlib1g-dev libpam0g-dev po-debconf
apt-cache showpkg debhelper
OUTPUTS: 7.0.15 -
apt-cache showpkg erlang-dev
OUTPUTS: 1:12.b.3-dfsg-4 -
cd ../..
mkdir debhelper-src
cd debhelper-src
wget http://ftp.de.debian.org/debian/pool/main/d/debhelper/debhelper_7.4.16.dsc
wget http://ftp.de.debian.org/debian/pool/main/d/debhelper/debhelper_7.4.16.t...
gunzip < debhelper_7.4.16.tar.gz | tar xvf -
cd debhelper
apt-get build-dep debhelper
OUTPUTS: E: You must put some 'source' URIs in your sources.list
dch -l local 'debhelper (7.4.16)'
debuild -us -uc
OUTPUTS: dpkg-checkbuilddeps: Unmet build dependencies: po4a (>= 0.24
apt-cache showpkg po4a
OUTPUTS: 0.34-2
aptitude install po4a
debuild -us -uc
dpkg -i ../*.deb
cd ../..
mkdir erlang-dev-src
cd erlang-dev-src
wget http://ftp.de.debian.org/debian/pool/main/e/erlang/erlang_13.b.4-dfsg-4.dsc
wget http://ftp.de.debian.org/debian/pool/main/e/erlang/erlang_13.b.4-dfsg.or...
wget http://ftp.de.debian.org/debian/pool/main/e/erlang/erlang_13.b.4-dfsg-4....
dpkg-source -x erlang_13.b.4-dfsg-4.dsc
cd erlang-13.b.4-dfsg
dpkg-buildpackage -rfakeroot -b
OUTPUTS: dpkg-checkbuilddeps: Unmet build dependencies: autoconf (>= 2.50) libssl-dev m4 libncurses5-dev quilt autotools-dev unixodbc-dev bison flex libwxgtk2.8-dev xsltproc libgl1-mesa-dev | libgl-dev libglu1-mesa-dev | libglu-dev libsctp-dev default-jdk fop
apt-cache showpkg autoconf
OUTPUTS: 2.61-8 -
aptitude install autoconf libssl-dev m4 libncurses5-dev quilt autotools-dev unixodbc-dev bison flex libwxgtk2.8-dev xsltproc libgl1-mesa-dev libglu1-mesa-dev libsctp-dev default-jdk fop
dpkg-buildpackage -rfakeroot -b
The truncated show-stopping error after a 1.25 hour build:
(.:13709): Gtk-WARNING **: cannot open display:
make[4]: *** [../pdf/stdlib-1.16.5.pdf] Error 1
make[4]: Leaving directory `/home/advomatic/erlang-dev-src/erlang-13.b.4-dfsg/lib/stdlib/doc/src'
make[3]: *** [docs] Error 2
make[3]: Leaving directory `/home/advomatic/erlang-dev-src/erlang-13.b.4-dfsg/lib/stdlib'
make[2]: *** [docs] Error 2
make[2]: Leaving directory `/home/advomatic/erlang-dev-src/erlang-13.b.4-dfsg/lib'
make[1]: *** [docs] Error 2
make[1]: Leaving directory `/home/advomatic/erlang-dev-src/erlang-13.b.4-dfsg'
make: *** [docs-stamp] Error 2
dpkg-buildpackage: failure: fakeroot debian/rules binary gave error exit status 2
How do I resolve that error?
Thanks,
Aaron
Huh. Looks like, from
Huh. Looks like, from
Gtk-WARNING **: cannot open display:
that it expects to run from X server. That's not possible with my configuration. What now?Is there a compile flag that
Is there a compile flag that allows us to disable GTK?
ejabberd itself doesn't need
ejabberd itself doesn't need erlang's GTK features, or erlang's documentation files. However, ejabberd needs erlang's stdlib library.
The error seems to indicate a problem compiling erlang, not ejabberd. So, you can install erlang from binary packages (you need at least to install erlang-nox and erlang-dev), and only compile ejabberd.