[erlang-questions] OTP R12B-1 build / installation issues

Ciprian Dorin Craciun ciprian.craciun@REDACTED
Sun Mar 16 15:37:50 CET 2008

    Hello all!

    (Sorry for the cross-posting but this email could be seen as both
a bug report or a feature request.)

    Today I tried to install OTP R12B-1 from the source code, and
during the process I have encountered the following issues.

    I will present how the installation was conducted:
    -- source code preparation:
        -- downloaded distribution archive;
        -- unarchived it;
        -- added it to an git repository in a new branch;
        -- checked out an empty branch => working directory was emptied;
        -- checked out the OTP branch;
        -- exported a tar archive with the contents;
        -- unarchived the tar in a new folder /.../temp/sources
    -- cd /.../temp/sources
    -- ./configure --prefix=...
    -- make
    !! problem: make breaks somewhere in hipe/???, because git ignores
empty directories, and thus these directories are missing from the
newly created tar.
    !! solution: created the forder which breaks make: lib/hipe/ebin
    -- make # again => no complaints
    -- make install
    !! problem: it breaks again when trying to copy lib/erl_???.so (I
don't remember the exact name.) maybe because there were also other
missing folders;

    So as a solution I've added a .gitignore (or .keep) file in each
empty folder before adding the source code to git. And after this
everything works fine.

    Second related problem: I can not build the OTP in a different
directory than the source code, as in:
    # OTP source is in "sources" -> /.../temp/sources
    # the build hierarchy I want it in "output" -> /.../temp/output
    cd output
    /.../tmp/sources/configure.sh --prefix=...
    # or neither
    /.../tmp/sources/configure.sh --srcdir=/.../tmp/sources --prefix=...

    Now, these problems are not very big, but I think it could be good
to know about them. Why can they impact:
    -- some distributions could keep the packages source codes in a
git repository, or any other repository that doesn't track empty
    -- a more advanced build system would prefer to keep the source
code and outputs distinct (like in the case of many other
applications, even glibc); (maybe because it will mount -- by using
fuse -- the archive directly to the .../sources folder, and .../output
will be a tmpfs;)

    I hope these observations are of some help, and could help improve
the Erlang platform.

    Thanks all,

More information about the erlang-questions mailing list