I had a quick look at this again.
The attached git patch allows me to build and run on RaspberryPi, both soft-float (debian6-19-04-2012 from http://www.raspberrypi.org/downloads) and hard-float (raspbian-r3 from http://www.raspbian.org/HexxehImages) system images.
In each case, I built, did 'make runtests', and did a quick sanity check using the example ioc
As noted, the CONFIG.linux-x86.linux-x86 file contains some linker flags: I didn't copy those since I don't know whether they're needed. My tests were ok without.
> -----Original Message-----
> From: Tim Robinson [mailto:email@example.com]
> Sent: 13 June 2012 00:07
> To: firstname.lastname@example.org
> Cc: email@example.com
> Subject: RE: EPICS build on armv6l
> My raspberryPi arrived this morning, one of the things I wanted to try
> on it was EPICS. I have time on my hands at the moment, so I did a
> quick trial of this.
> > Hi Florian,
> > On 2012-06-12 Florian Feldbauer wrote:
> > > Currently arm is only supported as target not as host for build.
> > > Since the Raspberry Pi has a gnu c compiler and all the libraries I
> > > need (also a x-server), would it be possible to build EPICS
> > > on this system instead of building it on a different system?
> > Yes, although as Jeff said you might need to add a few things to the
> > configure/os directory to get it to build. Since you're self-hosting
> > I think you should be able to use the generic target name linux-arm
> > for this build, which should simplify the Base configuration process.
> I also chose linux-arm, though I wondered if I should indicate
> endianness too.
> > You will need to create the file CONFIG.linux-arm.Common containing
> > the line
> > include $(CONFIG)/os/CONFIG.UnixCommon.Common
> > but that might be all you actually have to do.
> > CONFIG.Common.linux-arm may look like it's only set up for
> > cross-compilation, but those settings are actually overrides to
> > variables set in CONFIG.Common.UnixCommon so first try building
> > without making any changes there.
> I did that, and also included $(CONFIG)/CONFIG.gnuCommon I dare say
> that's not the way (or place) to do it, but I found that without that,
> COMPILE.cpp was undefined, so I was able to compile .c sources, but not
> .cpp I haven't got to the bottom of that, maybe tomorrow.
> > In case it's not clear, files names *.<host>.Common are included
> > whenever building on <host> irrespective of the target; files named
> > *.Common.<target> are included whenever compiling for <target> on any
> > host; files named *.<host>.<target> are used whenever that particular
> > combination of <host> and <target> are involved. Files named
> > CONFIG.*.* contain default settings for the build process, while
> > named CONFIG_SITE.*.* are intended for site- specific settings such
> > paths that might vary (location of cross-compilers etc.).
> > After a top-level 'make' succeeds, you will want to use 'make
> > to execute the build-in test programs (note that
> > takes 5 minutes to run, don't assume it has crashed when the messages
> > stop mid-test).
> The tests passed
> That's all I've tried so far
> > Hope this gets you started, ask if you get stuck. I would be
> > interested in adding your configuration files to the Base
> > if you would like to contribute them once you have everything
> > - Andrew
> > --
> > Never interrupt your enemy when he is making a mistake.
> > -- Napoleon Bonaparte
Description: Binary data
- EPICS build on armv6l Florian Feldbauer
- Re: EPICS build on armv6l Andrew Johnson
- RE: EPICS build on armv6l Tim Robinson
- Navigate by Date:
RE: SynApps build error : win32-x86 Mark Rivers
Re: SynApps build error : win32-x86 S. Stein
- Navigate by Thread:
Re: EPICS build on armv6l Andrew Johnson
Re: EPICS build on armv6l Metin Aydar