<html><body><div>Hi Pavel Pisa,<br></div><div><br>On Jul 19, 2015, at 10:35 PM, Pavel Pisa <<a href="mailto:pisa@cmp.felk.cvut.cz" onclick="return false;">pisa@cmp.felk.cvut.cz</a>> wrote:<br><br><div><blockquote type="cite"><div class="msg-quote"><div class="_stretch"><span class="body-text-content"><span class="body-text-content">Hello Chris and Qiao Yang,<br><br>On Monday 20 of July 2015 01:12:33 Chris Johns wrote:<br></span></span><blockquote class="quoted-plain-text" type="cite">On 20/07/2015 6:55 am, QIAO YANG wrote:</blockquote><blockquote class="quoted-plain-text" type="cite">> I've ported the graphic libraries into rsb so that we can build them</blockquote><blockquote class="quoted-plain-text" type="cite">> much easier. All Build passed, tested on arm with raspberrypi and i386</blockquote><blockquote class="quoted-plain-text" type="cite">> with pc386.</blockquote><blockquote class="quoted-plain-text" type="cite"><br></blockquote><blockquote class="quoted-plain-text" type="cite">Fantastic and thank you.</blockquote><span class="body-text-content"><span class="body-text-content"><br>I have reproduced build for i386. Thanks for instructions.<br>I return to the Microwindows suggestions in a separate message.<br><br>I would like to speak about source builder related questions first<br><br></span></span><blockquote class="quoted-plain-text" type="cite">> the libraries can be built with the command like:</blockquote><blockquote class="quoted-plain-text" type="cite">></blockquote><blockquote class="quoted-plain-text" type="cite">> ../source-builder/sb-set-builder \</blockquote><blockquote class="quoted-plain-text" type="cite">> --log=graphic-build-log.txt \</blockquote><blockquote class="quoted-plain-text" type="cite">> --prefix=$HOME/development/rtems-386/bsps/4.11 \</blockquote><blockquote class="quoted-plain-text" type="cite">> --with-rtems-bsp=pc386 \</blockquote><blockquote class="quoted-plain-text" type="cite">> --host=i386-rtems4.11 \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/freetype2.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/libjpeg.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/libpng.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/libtiff.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/t1lib.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/microwindows.bset \</blockquote><blockquote class="quoted-plain-text" type="cite">> 4.11/graphics/nxlib.bset</blockquote><blockquote class="quoted-plain-text" type="cite">></blockquote><blockquote class="quoted-plain-text" type="cite">> Patches that I used is available on my github fork of rtems-tools.</blockquote><blockquote class="quoted-plain-text" type="cite">> Waiting for more tests and reviews.</blockquote><blockquote class="quoted-plain-text" type="cite"><br></blockquote><blockquote class="quoted-plain-text" type="cite">I am closing in on finishing ticket <a href="https://devel.rtems.org/ticket/2374">https://devel.rtems.org/ticket/2374</a><div style="width:0px; height:0px;"> </div></blockquote><blockquote class="quoted-plain-text" type="cite">and I will test this after it has been resolved.</blockquote><span class="body-text-content"><br>I use system wide prefix for my RTEMS install. When I specified that<br><br> --prefix=/opt/rtems4.11<br><br>When I specified that to sb-set-builder then it silently skips install<br>steps. This leads not only to problem that I have not received resulting<br>binaries (even not found them in temporary RSB trees) but even build of<br>later packages dependant on previous ones failed.<br><br>I resolved that by use of RSB option<br><br> --pkg-tar-files<br><br>tar files has been generated and I could extract content to the right <br>directory and continue build with followup with sucesfull Microwindows<br>package build. I have been able to use that (after tar extraction)<br>to build and run my graphic application in QEMU then.</span></div></div></blockquote><span><br>So the library works if I've got it right. No problem with the build process.</span><br><br><blockquote type="cite"><div class="msg-quote"><div class="_stretch"><span class="body-text-content"><br><br>But I have failed into other trap with RSB first. I am used never<br>run commands with current directory in the git. So I have setup<br>build directory for the test and tried to run next script<br><br>-----------------------------------------------------------------<br>#!/bin/sh<br><br>SB_DIR="../../git/rtems-source-builder-yangqiao"<br><br>SB_DIR="$(cd -L "$SB_DIR" ; pwd -L )"<br><br>mkdir -p yangqiao-graphics<br><br>cd yangqiao-graphics<br><br># --prefix=$HOME/development/rtems-386/bsps/4.11 \<br><br>"$SB_DIR/source-builder/sb-set-builder" \<br> --log=graphic-build-log.txt \<br> --prefix=/opt/rtems4.11 \<br> --with-rtems-bsp=pc686 \<br> --host=i386-rtems4.11 \<br> --configdir "$SB_DIR/rtems/config" \<br> --pkg-tar-files \<br> "$SB_DIR/rtems/config/4.11/graphics/freetype2.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/libjpeg.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/libpng.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/libtiff.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/t1lib.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/microwindows.bset" \<br> "$SB_DIR/rtems/config/4.11/graphics/nxlib.bset"<br>-----------------------------------------------------------------<br><br>I tried to modify parameters different ways but it seems that<br>invocation outside of "git/rtems-source-builder/rtems" is not<br>supported. I.e. if --configdir is set then relative subdirectory<br>components pointing to *.cfg files are stripped. It can be good<br>idea on one hand if it is expected to put then all *.cfg files<br>to local/build specific/ directory but means finding and copying<br>of all dependences *.cfg.<br><br>I expect, that viceversa setup, i.e. CWD in "git/rtems-source-builder/rtems"<br>and option --topdir would work but I have not tested that.<br><br>I am not sure if described behavior is bug or feature and would like<br>to hear what is expected use.<br><br>The last question is on the border of RSB build and graphic packages<br>specific area.<br><br>Because libraries build is specific than I expect that all build<br>results should be installed in BSP directory, i.e.<br>/opt/rtems4.11/i386-rtems4.11/pc686/{lib,bin,lib/include} in my case.<br>It seems that JPEG library is configured right. But there are significant<br>leakages from freetype, libpng, t1lib and libtiff to<br>"/opt/rtems4.11/bin" and "/opt/rtems4.11/share" directories.<br>t1lib even installs to /share/t1lib directly.</span></div></div></blockquote><span> </span><br>Do you mean that the libraries are not installed in the bsp dir? In fact, I've got all libraries installed in the right place.<br>Firstly, I doubt if the bsp pc686 exists in arch i386. I can only find pc386 in mainline. Make sure that the bsp name is correct.<br>Secondly, verify the path you passed is what the builder expects as chris explained. I haven't  found out why the JPEG works while others can't, but I do use the paths to determin where to install. <br><br>I followed alan's blog to setup my environment. <br><br>alias i386-kernel-configuer='cd $HOME/development/rtems-386/rtems-git/; \<br>    ./bootstrap; \<br>    mkdir $HOME/development/rtems-386/build-rtems-386/; \<br>        cd $HOME/development/rtems-386/build-rtems-386/; \<br>        ../rtems-git/configure --target=i386-rtems4.11 \<br>            --enable-rtemsbsp=pc386 \<br>            --enable-tests=samples \<br>            --enable-networking \<br>            --enable-posix \<br>            --prefix=$HOME/development/rtems-386/bsps/4.11'<br><br>So in my case I've got a directory 'build-rtems-386' and a directory 'bsp' . What I passed to sb-set-builder is the directory:<br>--prefix=$HOME/development/rtems-386/bsps/4.11,  the same path used for kernel configure.<br><br>The libraries should be finally installed into directories<br>$HOME/development/rtems-386/bsps/4.11/pc386/lib<br>$HOME/development/rtems-386/bsps/4.11/pc386/lib/include<br>$HOME/development/rtems-386/bsps/4.11/pc386/bin<br><br>I hope this may help. Tell me if I misunderstood anything.<br><br><blockquote type="cite"><div class="msg-quote"><div class="_stretch"><span class="body-text-content"><br><br>It would be great if it is possible to limit these leaks.<br>I expect that most can be prevented by right prefix path related<br>options during packages configuration. I would be probably reasonable<br>to disable build of test code and utilities by config options<br>if possible. They are of zero value as host RTEMS tools "/opt/rtems4.11/bin"<br>when compiled for target and even on target there are usable libraries<br>only because RTEMS does not load applications at runtime.<br><br>None of above is critical but it would worth to clean up for better<br>experience.<br><br>Best wises,<br><br> Pavel<br><br></span></div></div></blockquote><span></span><br>Best wishes<br></div></div></body></html>