Dinesh Rawat
Dinesh Rawat

Reputation: 1019

Ejabberd 19 throws 'deps/.got' exception while installation

I am trying to install ejabberd-19 on my ubuntu 16 machine.I am installing it from the source code from git. The steps I am following are as follows-

  1. git clone ...
  2. ./autogen.sh

  3. ./configure --enable-mysql

  4. make

The last command make throws error everytime-

rm -rf deps/.got
rm -rf deps/.built
mkdir -p deps
/usr/lib/erlang/bin/escript rebar get-deps && :> deps/.got
WARN:  Directory expected to be an app dir, but no app file found 
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
==> goldrush (get-deps)
==> lager (get-deps)
==> p1_utils (get-deps)
==> cache_tab (get-deps)
==> fast_tls (get-deps)
==> stringprep (get-deps)
==> fast_xml (get-deps)
==> unicode_util_compat (get-deps)
==> idna (get-deps)
==> ezlib (get-deps)
==> xmpp (get-deps)
==> fast_yaml (get-deps)
==> yconf (get-deps)
==> jiffy (get-deps)
WARN:  Missing plugins: [rebar3_hex]
==> p1_oauth2 (get-deps)
==> rel (get-deps)
==> ejabberd (get-deps)
WARN:  Directory expected to be an app dir, but no app file found 
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
WARN:  Directory expected to be an app dir, but no app file found 
in ebin/ or src/:
/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix
ERROR: Dependency dir /media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix failed application validation with reason:
{missing_app_file,"/media/dineshrawat/data/node-js/projects/ejabberd/deps/pkix"}.
ERROR: 'get-deps' failed while processing /media/dineshrawat/data/node-js/projects/ejabberd: rebar_abort
Makefile:105: recipe for target 'deps/.got' failed
make: *** [deps/.got] Error 1

Tried a lot to make it install, --enable-mysql flag is to enable mysql instead of mnesia db.

I am sure I am missing some dependency.

Upvotes: 0

Views: 130

Answers (1)

Badlop
Badlop

Reputation: 4120

I am sure I am missing some dependency.

Well, the pkix library is downloaded automatically during "make", like all the other erlang libraries.

The first time you run make, do you see lines like this? Does pkix get downloaded? That same version than I get? Are those files downloaded in deps/pkix? Is that the only dependency that you miss, or are there others missing too?

git clone [email protected]:processone/ejabberd.git
cd ejabberd/
./autogen.sh
./configure --enable-mysql
make
...
Pulling p1_oauth2 from {git,"https://github.com/processone/p1_oauth2",
                            {tag,"0.6.5"}}
S'està clonant a «p1_oauth2»...
Pulling pkix from {git,"https://github.com/processone/pkix",{tag,"1.0.4"}}
S'està clonant a «pkix»...
Pulling jose from {git,"https://github.com/potatosalad/erlang-jose",
                       {tag,"1.9.0"}}
S'està clonant a «jose»...
...
==> jiffy (get-deps)
WARN:  Missing plugins: [rebar3_hex]
==> p1_oauth2 (get-deps)
==> pkix (get-deps)
==> base64url (get-deps)
...
WARN:  Missing plugins: [rebar3_hex]
==> p1_oauth2 (configure-deps)
==> pkix (configure-deps)
==> jose (configure-deps)
==> eimp (configure-deps)
...
Compiled src/oauth2_token.erl
Compiled src/oauth2.erl
==> pkix (compile)
Compiled src/pkix_sup.erl
Compiled src/pkix_app.erl
Compiled src/pkix.erl
==> base64url (compile)
Compiled src/base64url.erl
...

Upvotes: 1

Related Questions