EPICS Home

Experimental Physics and Industrial Control System


 
1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: Building EPICS for multiple Linux distributions
From: Dirk Zimoch <dirk.zimoch@psi.ch>
To: Rod Nussbaumer <bomr@triumf.ca>
Cc: EPICS Tech-Talk <tech-talk@aps.anl.gov>
Date: Fri, 12 Mar 2010 11:28:10 +0100
Ron,

For embedded Linux, I build and install the kernel, busybox etc separately from EPICS.

For EPICS create an architecture based on linuxCommon with a unique name and configure all the cross compiling tools. For example I have created one for crisv10 for 4.14.8 (I think in 3.14.11 a cris configuration is already included):

>cat CONFIG.Common.linux-crisv10
# Configuration for the cris cross compiler for
# crisv10 targets, e.g. axis ETRAX 100LX

# Include definitions common to all linux targets
include $(CONFIG)/os/CONFIG.Common.linuxCommon

VALID_BUILDS = Ioc
BUILD_CLASS = CROSS
CROSS = YES

GNU_DIR=/usr/local/cris
CMPLR_PREFIX=cris-axis-linux-gnu-

SHRLIB_LDFLAGS = -shared
LOADABLE_SHRLIB_LDFLAGS = -shared

/* this only works with a hack in ca/convert.cpp */
ARCH_DEP_CPPFLAGS += -DCA_LITTLE_ENDIAN

ARCH_DEP_LDFLAGS += -mcrislinux

COMMANDLINE_LIBRARY = EPICS

STRIP = $(GNU_BIN)/$(CMPLR_PREFIX)strip$(CMPLR_SUFFIX)
LINK.cpp += ; $(STRIP) $@


Best regards, Dirk

Rod Nussbaumer wrote:
Dirk Zimoch wrote:
John Dobbins wrote:
I was wondering if anyone can suggest an approach for building EPICS on multiple linux distributions (which may have different kernel versions, compiler versions, etc.)

Does one define new architectures linux-x86-distribution_a linux-x86-distribution_b?

John Dobbins
Lab for Elementary Particle Physics
Cornell University


And, what about Linux on embedded devices, such as VME CPUs? How are people building kernels, drivers, EPICS, etc. and then deploying them to production CPUs?


Are labs using standard Linux distributions for the likes of kernels, drivers (and what about non-desktop oriented drivers, such as for VME), and filesystems?

Has anyone composed a complete package of cross toolchains, root filesystem, kernel + configuration, etc., that they use as any kind of standard for embedded systems?

Rod Nussbaumer
ISAC Controls, TRIUMF
Vancouver, Canada.




References:
Building EPICS for multiple Linux distributions John Dobbins
Re: Building EPICS for multiple Linux distributions Dirk Zimoch
Re: Building EPICS for multiple Linux distributions Rod Nussbaumer

Navigate by Date:
Prev: Re: Building StreamDevice 2-4 / SynApps / Win32 Dirk Zimoch
Next: Re: IS SDDS not avaible? Shen, Guobao
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: Building EPICS for multiple Linux distributions Rod Nussbaumer
Next: RE: IP asyn timeout connection Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019