erlware / relx

Sane, simple release creation for Erlang

Home Page:http://erlware.github.io/relx

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Making a release tar and release is different

joaohf opened this issue · comments

Hello,

Using rebar3 3.14.4 and making a release with:

  • rebar3 tar
  • rebar3 release

The main problem is because the file bin/erl gets overwrite.

The output will be different. Not sure if this is a regression of this one #70

The figure below shows the same release. On the left hand side using release and on the right hand side tar:

relx

For completeness, can you provide the configuration you're calling both commands with?

Hmm, I'll investigate it a bit more. The issue seems to be a side effect from my changes related to this one erlang/rebar3#2503.

Anyway, the following shows the commands that I'm using:

rebar3 as prod release -o /tmp/pp --system_libs /home/joaohf/work/opensource/kas-meonrpi/dunfell/build/tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/axon/0.1.0-git999-r0/recipe-sysroot/usr/lib/erlang/lib --include-erts /home/joaohf/work/opensource/kas-meonrpi/dunfell/build/tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/axon/0.1.0-git999-r0/recipe-sysroot/usr/lib/erlang -n axon
===> Verifying dependencies...
===> Analyzing applications...
===> Compiling axon
===> Assembling release axon-0.1.0...
===> There are missing function calls in the release.
===> Make sure all applications needed at runtime are included in the release.
===> axon_sup:start_link/0 calls undefined function supervisor:start_link/3
===> Release successfully assembled: /tmp/pp/axo


 rebar3 as prod tar --system_libs /home/joaohf/work/opensource/kas-meonrpi/dunfell/build/tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/axon/0.1.0-git999-r0/recipe-sysroot/usr/lib/erlang/lib --include-erts /home/joaohf/work/opensource/kas-meonrpi/dunfell/build/tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/axon/0.1.0-git999-r0/recipe-sysroot/usr/lib/erlang -n axon
===> Verifying dependencies...
===> Analyzing applications...
===> Compiling axon
===> Assembling release axon-0.1.0...
===> There are missing function calls in the release.
===> Make sure all applications needed at runtime are included in the release.
===> axon_sup:start_link/0 calls undefined function supervisor:start_link/3
===> Release successfully assembled: _build/prod/rel/axon
===> Building release tarball axon-0.1.0.tar.gz...
===> Tarball successfully created: _build/prod/rel/axon/axon-0.1.0.tar.gz

tar zxf _build/prod/rel/axon/axon-0.1.0.tar.gz -C /tmp/p


root@porco:/home/joaohf/work/projetos/axon# diff /tmp/p/erts-11.1.8/bin/erl /tmp/pp/axon/erts-11.1.8/bin/erl
Binary files /tmp/p/erts-11.1.8/bin/erl and /tmp/pp/axon/erts-11.1.8/bin/erl differ

root@porco:/home/joaohf/work/projetos/axon# file /tmp/pp/axon/erts-11.1.8/bin/erl
/tmp/pp/axon/erts-11.1.8/bin/erl: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=bc0689f2a1ea5b9984975afbadb8dbb586f9a9e7, for GNU/Linux 3.2.0, stripped

root@porco:/home/joaohf/work/projetos/axon# file /tmp/p/erts-11.1.8/bin/erl
/tmp/p/erts-11.1.8/bin/erl: POSIX shell script, ASCII text executable

I'm closing this issue for now.

Thanks.