Hi Sergey,
On Mon, Jan 23, 2012 at 11:35:46AM +0400, Sergey Mironov wrote:
> Hi. Model
>
> > /usr/
> > arm-none-linux-gnueabi/ -> projectA/
> > arm-none-linux-gnueabi.orig/
> > projectA/
> > projectB/
> > ...
> > projectN/
> >
> > with arm-none-linux-gnueabi.orig/ being the original contents after
> > crossdev built the toolchain. As I create projects, I would 'cp -a
> > arm....orig/* projectN/'
> >
>
> there is one drawback here - compiler version. Looks like gentoo
> stores libc files in /usr/lib/gcc/arm-projectA-linux-gnueabi/1.2.3
> so it will probably break something if you use different gcc for your projects.
Yes, I remember falling into that trap before, with libgcc.a, etc. The
above layout assumed a single, static cross-compiler. Updates to the
cross-compiler would then necessitate rebuilding all the projects.
> > How do folks out there handle multiple projects with the same toolchain?
> > I'm thinking, since crossdev worked so well, to just build a
> > 'arm-projectA-linux-gnueabi' and then 'arm-projectB-linux-gnueabi' to
> > keep the roots separate.
> > What do you guys use?
>
> I use 'arm-projectA-linux-gnueabi' approach. It works, but still not
> ideal - For example, I can't just copy the whole folder to another
> gentoo machine and continue use emerge-projectA there.
I don't anticipate much need to migrate /usr/cross-compiler to other
machines. As long as I keep the ebuilds for the cross-compiler
components, crossdev, and the packages, I should be able to rebuild any
given project from scratch.
I should probably set up a separate overlay per project to accomplish
that.
thx,
Jason.
|