basho / riak

Riak is a decentralized datastore from Basho Technologies.
http://docs.basho.com
Apache License 2.0
3.94k stars 536 forks source link

Rebar/Erlang error when installing/building riak 2.1.4 #920

Closed srikanthkakumanu closed 6 years ago

srikanthkakumanu commented 7 years ago

Hi,

I am encountering the below issue when issued 'make rel' command to install riak 2.1.4 (followed github quickstart documentation). I installed latest erlang (via brew) OTP version and rebar3 as well but no luck with them.

Issue Log

Srikanths-Mac:riak-2.1.4 srikanth$ make rel

fatal: Not a git repository (or any of the parent directories): .git Using rebar.config.lock file to fetch dependencies ./rebar -C rebar.config.lock get-deps WARN: Missing plugins: [rebar_lock_deps_plugin] WARN: Missing plugins: [rebar_lock_deps_plugin] ==> node_package (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> goldrush (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> lager (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> syslog (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> lager_syslog (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> cluster_info (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> sidejob (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> erlang_js (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> meck (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> getopt (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> neotoma (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> cuttlefish (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> bitcask (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> eper (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> edown (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> sext (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> poolboy (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> basho_stats (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_sysmon (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> eleveldb (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_ensemble (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> pbkdf2 (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> parse_trans (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> bear (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> folsom (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> setup (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] WARN: Missing plugins: [rebar_lock_deps_plugin] ==> src (get-deps) ==> exometer_core (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> clique (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_core (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_pipe (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> protobuffs (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_pb (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> mochiweb (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> webmachine (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_api (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_dt (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> eunit_formatters (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_kv (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> merge_index (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] WARN: Missing plugins: [rebar_lock_deps_plugin] ==> lucene_parser (get-deps) ==> riak_search (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> erlydtl (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_control (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riaknostic (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> kvc (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> ibrowse (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> yokozuna (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> canola (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak_auth_mods (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> rebar_lock_deps_plugin (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> rel (get-deps) WARN: Missing plugins: [rebar_lock_deps_plugin] ==> riak (get-deps) ==> riak-2.1.4 (get-deps) ./rebar compile WARN: Missing plugins: [rebar_lock_deps_plugin] WARN: Missing plugins: [rebar_lock_deps_plugin] ==> node_package (compile) ERROR: OTP release 20 does not match required regex R16|17 ERROR: compile failed while processing /Users/srikanth/installed/riak-2.1.4/deps/node_package: rebar_abort make: *** [compile] Error 1

Bob-The-Marauder commented 7 years ago

The cause you have is here ERROR: OTP release 20 does not match required regex R16|17 Riak only works with older versions of Erlang i.e. 16 and 17 according to this error. As brew no longer supports these older versions of Erlang, you will have to install via Kerl. See https://www.tiot.jp/riak-docs/riak/kv/2.1.4/setup/installing/source/erlang/#installing-with-kerl

That said, there is an issue with Yokozuna in that the Yokozuna jar files and Solr files required to build were hosted on the Basho AWS service which is no longer available. A patch has been released for develop, develop-2.0 and develop-2.2 that points Yokozuna to copies of the necessary files that are hosted by TI Tokyo. I am not sure if it works with 2.1.4 as I haven't tested.

Once you have the correct version of Erlang, this would be how you build:

git clone riak
cd riak
checkout develop
make deps
export ARTIFACT_URL_PREFIX="https://files.tiot.jp/riak"
make

Substitute checkout develop for either checkout develop-2.0 or checkout develop-2.2 depending on which version you want to build.

If the build fails but your heart is set on 2.1.4, you can download the Mac OSX version from https://files.tiot.jp/riak/kv/2.1/2.1.4/osx/10.8/riak-2.1.4-OSX-x86_64.tar.gz and the sha file is https://files.tiot.jp/riak/kv/2.1/2.1.4/osx/10.8/riak-2.1.4-OSX-x86_64.tar.gz.sha

SserwangaV commented 6 years ago

Referring to @Bob-The-Marauder solution, when installing riak-2.2.3 from the source, I just edited the file build-solr.sh found in the tools directory of yokozuna directory and replaced http://s3.amazonaws.com/files.basho.com with https://files.tiot.jp/riak where ever it appears in the file. I was following the procedure of installing from the source as stated here https://www.tiot.jp/riak-docs/riak/kv/2.2.3/setup/installing/source/#installing-from-source-package.