RTEMS build failure for 4.11/rtems-sparc

Athanasios.Tsiodras at esa.int Athanasios.Tsiodras at esa.int
Wed Jan 27 10:48:17 UTC 2016


Hello RTEMS wizards.

I am trying to setup a nightly build process for 4.11/rtems-sparc (which 
is the target of interest for my section of the European Space Agency). I 
managed to get a firewall exception from our tech department so I can 
(finally) checkout directly from git.rtems.org.

The following sequence of commands, however, showcases a failed attempt to 
build 4.11/rtems-sparc :

    $ git clone git://git.rtems.org/rtems-source-builder.git
    $ cd rtems-source-builder
    $ git checkout 4.11
    $ sudo apt-get build-dep binutils gcc g++ gdb unzip git python2.7-dev
    ...
    $ ./source-builder/sb-check
    RTEMS Source Builder - Check, 4.11 (436ec884a86c)
    Environment is ok

    $ cd rtems
    $ ../source-builder/sb-set-builder --log=l-sparc.txt 
--prefix=$HOME/development/rtems/4.11 4.11/rtems-sparc
    ...
    config: tools/rtems-gdb-7.9-1.cfg
    package: sparc-rtems4.11-gdb-7.9-i686-linux-gnu-1
    building: sparc-rtems4.11-gdb-7.9-i686-linux-gnu-1
    reporting: tools/rtems-gdb-7.9-1.cfg -> 
sparc-rtems4.11-gdb-7.9-i686-linux-gnu-1.txt
    reporting: tools/rtems-gdb-7.9-1.cfg -> 
sparc-rtems4.11-gdb-7.9-i686-linux-gnu-1.xml
    config: tools/rtems-tools-4.11-1.cfg
    package: rtems-tools-4.11-1
    git: reset: git://git.rtems.org/rtems-tools.git
    git: checkout: git://git.rtems.org/rtems-tools.git => 4.11
    git: pull: git://git.rtems.org/rtems-tools.git
    building: rtems-tools-4.11-1
    error: building rtems-tools-4.11-1
    Build FAILED

Right after building GDB (successfully - I can see the sparc-rtems4.11-gdb 
binary in the "temp" build folder) RSB tries to build rtems-tools-4.11, 
via an auto-generated "doit" script. After checking out from 
git://git.rtems.org/rtems-tools.git  the script tries to "cd 
rtems-tools-4.11" but in fact the only thing that exists in that folder 
after checking out from rtems-tools.git is:

thanassis at taste 
~/development/rtems/src/rtems-source-builder/rtems/build/rtems-tools-4.11-1
$ ls -l
total 20
drwxr-xr-x 2 thanassis thanassis 4096 Jan 27 10:46 ./
drwxr-xr-x 8 thanassis thanassis 4096 Jan 27 10:35 ../
-rwxr-xr-x 1 thanassis thanassis 5313 Jan 27 10:45 doit*
lrwxrwxrwx 1 thanassis thanassis   92 Jan 27 10:35 rtems-tools.git -> 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git/

...so the process fails.

I verified that this is indeed the issue by patching "doit" to introduce a 
second symlink:

    $ diff -u doit doit.new
    --- doit        2016-01-27 11:24:40.738260198 +0100
    +++ doit.new    2016-01-27 11:34:12.614248399 +0100
    @@ -82,6 +82,7 @@
     cd 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/build/rtems-tools-4.11-1
     /bin/rm -rf ${rtems_tools_source}
     ln -s 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git 
${source_dir_rtems_tools}
    +ln -s 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git 
rtems-tools-4.11
     cd ${rtems_tools_source}
     /bin/chmod -R a+rX,g-w,o-w .

After this change, "doit" completes successfully:

    thanassis at taste 
~/development/rtems/src/rtems-source-builder/rtems/build/rtems-tools-4.11-1
    $ ./doit.new
    => rtems-tools-4.11-1:
    ==> %prep:
    ==> clean %{buildroot}: 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/build/tmp/rtems-tools-4.11-1-root-thanassis
    ==> %build:
    Setting top to                           : 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git
    Setting out to                           : 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git/build
    Version                                  : 4.11.3175451a890e_modified 
(4.11)
    Checking for 'gcc' (C compiler)          : /usr/bin/gcc
    Checking for 'g++' (C++ compiler)        : /usr/bin/g++
    Checking for header alloca.h             : yes
    Checking for header fcntl.h              : yes
    Checking for header process.h            : not found
    ...
    + install 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/build/tmp/rtems-tools-4.11-1-root-thanassis/home/thanassis/development/rtems/4.11/share/rtems/tester/rtems/version.cfg 
(from tester/rtems/version.cfg)
    Waf: Leaving directory 
`/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git/build'
    'install' finished successfully (0.779s)
    ==> %clean:

Here's the final form of the build folder afterwards:

    thanassis at taste 
~/development/rtems/src/rtems-source-builder/rtems/build/rtems-tools-4.11-1
    $ ls -l
    total 24
    -rwxr-xr-x 1 thanassis thanassis 5308 Jan 27 11:24 doit
    -rwxr-xr-x 1 thanassis thanassis 5425 Jan 27 11:34 doit.new
    lrwxrwxrwx 1 thanassis thanassis   92 Jan 27 11:34 rtems-tools-4.11 -> 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git
    lrwxrwxrwx 1 thanassis thanassis   92 Jan 27 11:24 rtems-tools.git -> 
/home/thanassis/development/rtems/src/rtems-source-builder/rtems/sources/git/rtems-tools.git

The hack works, but I of course need to somehow introduce this in the 
process that emits "doit" - which I understand is driven from the config 
files.

Any help?
Thanks in advance!

P.S. I am not the only one experiencing this - see relevant question on 
StackOverflow a month ago: 
 
http://stackoverflow.com/questions/34369549/shell-cmd-failed-while-building-rtems-on-linux-mint

This message and any attachments are intended for the use of the addressee or addressees only.
The unauthorised disclosure, use, dissemination or copying (either in whole or in part) of its
content is not permitted.
If you received this message in error, please notify the sender and delete it from your system.
Emails can be altered and their integrity cannot be guaranteed by the sender.

Please consider the environment before printing this email.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20160127/35ce8f7a/attachment.html>


More information about the users mailing list