Build system wipes include directory

Edgar Klerks edgar.klerks at ...9...
Sun Dec 8 14:23:50 CET 2013


Hi Norman,

I just read the tutorial again and you are right, in the tutorial there
stands that the repository and build dir are separate. It was this what was
unclear to me:

In the remaining document when referring to non-absolute directories, these
are local to hello_tutorial. Now we tell the Genode build system, that
there is a new repository. Therefore we add the path to our new repository
to 'build/etc/build.conf':
I thought the build directory was relative to hello_tutorial, but you are
stating it is not.

The rest of the tutorial was very clear to me.


Thanks,

Edgar



On Sun, Dec 8, 2013 at 11:06 AM, Norman Feske
<norman.feske at ...1...>wrote:

> Hello Edgar,
>
> thanks for giving Genode a try and welcome to the list!
>
> > I thought no problem, thus I did a make clean. This wasn't helpful. Then
> > I did a make cleanall, but now it wiped out the whole build/include
> > directory.
> >
> > Is this intended behaviour or should I not put things there? At this
> > stage it is just annoying, but I think this is a bug, because the
> > tutorial puts the headers, which define the RPC interfaces. Can I
> > prevent this behaviour?
>
> it looks like you somehow got the meaning of source and build
> directories mixed up. Genode's build system builds out of tree, that is,
> it keeps source codes separated from build output. From what you write,
> it seems that you placed your source code right into the build
> directory. That is not supposed to work. Instead, I recommend to place
> your code into one of the existing souce-code repositories or create a
> new source-code repository for your project. (outside the build
> directory) For more details of how a source-code repository is
> structured, let me refer you to the build-system documentation:
>
>   http://genode.org/documentation/developer-resources/build_system
>
> Your build directly obtains the list of the source-code repositories to
> use from the '<build-dir>/etc/build.conf' file. This is the place where
> you can add additional repositories such as your project's one.
>
> Your post hints at a problem with the current version of the tutorial.
> Is does not seem to make perfectly clear where to place the source code.
> So you have a suggestion where and how to include this information in a
> good way?
>
> > And I want to use c++ features like Strings instead of char *. How can I
> > enable this? I recognize I need a library for this, but I can't find it
> > in base.
>
> You can use most of the standard C++ library by taking the following steps:
>
> 1. Download the standard C++ library into the Genode source tree by
>    issuing the following command from within the 'libports/' repository:
>
>    make prepare PKG=stdcxx
>
>    For stdcxx to work, you will also need the C runtime, which you can
>    obtain via the following command:
>
>    make prepare PKG=libc
>
> 2. Add the 'libports/' repository to the list of 'REPOSITORIES' in your
>    '<build-dir>/etc/build.conf' file. (just uncomment the corresponding
>    line)
>
> 3. Specify the 'stdcxx' library in your 'target.mk' file by adding the
>    following declaration:
>
>    LIBS += stdcxx
>
> Now you should be able to include the usual C++ headers for strings and
> containers.
>
> Good luck!
>
> Norman
>
> --
> Dr.-Ing. Norman Feske
> Genode Labs
>
> http://www.genode-labs.com · http://genode.org
>
> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>
>
> ------------------------------------------------------------------------------
> Sponsored by Intel(R) XDK
> Develop, test and display web and hybrid apps with a single code base.
> Download it for free now!
>
> http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
> _______________________________________________
> Genode-main mailing list
> Genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20131208/0c2ba3cd/attachment.html>


More information about the users mailing list