diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..a8abd87 --- /dev/null +++ b/INSTALL @@ -0,0 +1,93 @@ += Installing mgw_nat = + +... is currently not _that_ simple, I'm working on it. + +== Installation procedure (rebar) = + +=== checking out mgw_nat === + +{{{ +cd ~/osmo-erlang/ +git clone git://git.osmocom.org/erlang/mgw_nat +}}} + +=== getting + patching rebar === + +{{{ +cd ~/osmo-erlang +hg clone https://bitbucket.org/basho/rebar +patch -p1 < ~/osmo-erlang/mgw_nat/rebar-asn1_set.diff +cd rebar +./bootstrap +cp rebar /usr/local/bin/ +}}} + +=== building mgw_nat and its dependencies === + +{{{ +cd ~/osmo-erlang/mgw_nat +rebar get-deps +rebar compile +}}} +some error will occur regarding src/tcap_map_patch.erl due to missing map.hrl file +{{{ +mv deps/osmo_map/src/map.hrl deps/osmo_map/include/ +rebar compile +}}} + +== Installation procedure (manual) == + +=== Dependencies === + +let's assume we create a new base directory directory {{{~/osmo-erlang}}} for all +the Osmocom related Erlang code. + +As such, we need to set the {{{ERL_LIBS}}} variable to include this directory, e.g. +by using {{{export ERL_LIBS=~/osmo-erlang/}}} in the shell. + +==== osmo_ss7 ==== + +{{{ +cd ~/osmo-erlang/ +git clone git://git.osmocom.org/erlang/osmo_ss7 +cd osmo_ss7 +erl -make +}}} + + +==== osmo_map ==== + +{{{ +cd ~/osmo-erlang/ +git clone git://git.osmocom.org/erlang/osmo_map +cd osmo_map +erl -make +}}} + +=== mgw_nat === + +{{{ +cd ~/osmo-erlang/ +git clone git://git.osmocom.org/erlang/mgw_nat +cd mgw_nat +erl -make +}}} + +== Configuration file == + +You have to write the config file using the standard Erlang OTP application +configuration file syntax and store it in e.g. {{{~/osmo-erlang/local.cfg}}} + +== Starting the VM / Application == + +* Make sure ERL_LIBS is set (see above) +{{{ +cd ~/osmo-erlang/ +erl -config ./local.cfg +}}} + +Inside the VM, you can then type +{{{ +application:start(mgw_nat). +}}} +in order to start the application. diff --git a/rebar-asn1_set.diff b/rebar-asn1_set.diff new file mode 100644 index 0000000..cb144e1 --- /dev/null +++ b/rebar-asn1_set.diff @@ -0,0 +1,21 @@ +diff -r d4fcc10abc0b src/rebar_asn1_compiler.erl +--- a/src/rebar_asn1_compiler.erl Wed Dec 15 17:40:12 2010 +0100 ++++ b/src/rebar_asn1_compiler.erl Fri Feb 25 16:03:42 2011 +0100 +@@ -38,8 +38,8 @@ + + -spec compile(Config::#config{}, AppFile::string()) -> 'ok'. + compile(Config, _AppFile) -> +- rebar_base_compiler:run(Config, filelib:wildcard("asn1/*.asn1"), +- "asn1", ".asn1", "src", ".erl", ++ rebar_base_compiler:run(Config, filelib:wildcard("asn1/*.set.asn1"), ++ "asn1", ".set.asn1", "src", ".erl", + fun compile_asn1/3). + + -spec clean(Config::#config{}, AppFile::string()) -> 'ok'. +@@ -65,5 +65,5 @@ + filelib:wildcard(filename:join([SrcDir, Base ++ ".*"])) ++ Acc + end, + [], +- filelib:wildcard(filename:join([AsnDir, "*.asn1"])) ++ filelib:wildcard(filename:join([AsnDir, "*.set.asn1"])) + ).