EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Cross Building Extensions
From: Michael Abbott <[email protected]>
To: Rod Nussbaumer <[email protected]>
Cc: tech-talk <[email protected]>
Date: Fri, 4 Dec 2009 18:20:53 +0000 (GMT)
On Fri, 4 Dec 2009, Rod Nussbaumer wrote:
> David Dudley wrote:
> > I have a project where I need to cross build some of the EPICS 
> > extensions for another architecture.
> > 
> > Specifically, I want to build the ChannelArchiver to run on a remote 
> > Linux host.
> > 
> > I already have the IOS compiled for the host (linux-xscale_be), and it 
> > works well, with all the libraries and programs functional on that 
> > architecture, but to make the machine I’m setting up an independent 
> > system, I need to run the ChannelArchiver as well on that device.
> > 
> > I defined ‘CROSS_COMPILER_TARGET_ARCHS’ in the extensions configure 
> > directory to ‘linux-xscale_be’, and when I build, I create a xscale_be 
> > bin directory, however the build system doesn’t pick up the target 
> > build tools, so it’s building 2 copies of the host programs.
> > 
> > What do I adjust to make the extensions build system pick up the 
> > proper toolset?
> > 
> > David Dudley
> 
> You will need to create 
> base/configure/os/CONFIG_SITE.linux-x86.linux-xscale_be
> 
> In it, you can assign to '$GNU_DIR' the path to your cross tools. When 
> you do this, leave off any trailing 'bin' directory name, as EPICS build 
> will append this by itself. See the corresponding files for other 
> architectures as a guide.

There already exists a linux-arm_eb target, which should serve: you should 
just need to edit GNU_DIR and GNU_TARGET in 
	configure/os/CONFIG_SITE.linux-x86.linux-arm_eb

GNU_DIR, as Rod says, points to the base directory for your cross 
compiler, and GNU_TARGET needs to be the compiler target tuple, or to be 
precise, the prefix in front of your compiler call: eg, I compile with
	arm-xscale-linux-gnueabi-gcc
and so I have
	GNU_TARGET = arm-xscale-linux-gnueabi

References:
Cross Building Extensions David Dudley
Re: Cross Building Extensions Rod Nussbaumer

Navigate by Date:
Prev: Re: Cross Building Extensions Rod Nussbaumer
Next: Re: Cross Building Extensions Janet Anderson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Cross Building Extensions Rod Nussbaumer
Next: Re: Cross Building Extensions Janet Anderson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  <20092010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 31 Jan 2014 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·