EPICS Home

Experimental Physics and Industrial Control System


 
1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  2007  2008  2009  2010  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  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: 64-bit EPICS anyone?
From: "Zhijian Yin (ZY)" <[email protected]>
To: "Ernest L. Williams Jr." <[email protected]>
Cc: EPICS tech-talk <[email protected]>
Date: Fri, 14 Oct 2005 14:29:35 -0400
Hi, Ernest,

Just like you, I am trying to compile epics for a AMD64 linux box. I am running Debian.

Compiling epics base stalls, because $(EPICS)/base/startup/EpicsHostArch.pl(and EpicsHostArch shell script) reports amd64 as "unsupported".

I found a quick and dirty fix is to add x86_64 to the cpu list for x86-linux, i.e., change EpicsHostArch script to

case $sysname in
Linux )
os=linux
cpu=`uname -m`
case $cpu in i386 | i486 | i586 | i686 | x86_64 ) ### added x86_64
cpu=x86


And change the related lines in EpicsHostArch.pl to

sub GetEpicsHostArch { # no args
$arch=$Config{'archname'};
if ($arch =~ /sun4-solaris/) { return "solaris-sparc";
} elsif ($arch =~ m/i86pc-solaris/) { return "solaris-x86";
} elsif ($arch =~ m/sun4-sunos/) { return "sun4-68k";
} elsif ($arch =~ m/i[3-6]86-linux/) { return "linux-x86";
} elsif ($arch =~ m/x86_64/) { return "linux-x86"; ####this is a newly added line
} elsif ($arch =~ m/MSWin32-x86/) { return "win32-x86";
} elsif ($arch =~ m/cygwin/) { return "cygwin-x86";
} elsif ($arch =~ m/PA-RISC1.1/) { return "hpux-parisc";
} elsif ($arch =~ m/darwin/) { return "darwin-ppc";
} else { return "unsupported"; }
}



The idea is to have 'uname -m' (which reports as x86_64 for AMD64) as linux-x86 for epics.


Recompilation works fine. Since it uses x86_64 libs, the build is 64bit.

A better way probably is as what you suggested, add x86_64 as a seperate architecture. I think you can just copy the linux-x86 files.


ZY



Ernest L. Williams Jr. wrote:


Hi,

I have an AMD64 linux box running redhat linux and want to build both a
32-bit and 64-bit version of EPICS BASE.

Before we get started, I wanted to check the community for EPICS running
on AMD64 natively.  Is anyone doing this?

I would like to start with just building EPICS R3.14 natively against an
ADM64 Opteron architecture.  Not interested in cross-compiling yet (i.e.
let's forget about vxWorks for now).

Of course, we will need new configuration files in
"<EPICS_BASE/configure/os>"

I supposed they would look like so:
================================================
CONFIG.Common.linux-x86_64
CONFIG.Common.linux-x86_64-debug
CONFIG.linux-x86_64.Common
CONFIG.linux-x86_64-debug.Common
CONFIG.linux-x86_64-debug.linux-x86_64-debug
CONFIG.linux-x86_64.linux-x86_64
CONFIG.linux-x86_64.linux-x86_64-debug
CONFIG_SITE.Common.linux-x86_64
CONFIG_SITE.linux-x86_64.Common
CONFIG_SITE.linux-x86_64-debug.linux-x86_64-debug
CONFIG_SITE.linux-x86_64.linux-x86_64
CONFIG_SITE.linux-x86_64.UnixCommon
=================================================

Thanks,
Ernest L. Williams Jr.
SNS Control Systems Group
ORNL







Replies:
Re: 64-bit EPICS anyone? Ernest L. Williams Jr.
References:
64-bit EPICS anyone? Ernest L. Williams Jr.

Navigate by Date:
Prev: UDP to CA_UDP hangs network? Steven Hartman
Next: Re: 64-bit EPICS anyone? Ernest L. Williams Jr.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: 64-bit EPICS anyone? Ernest L. Williams Jr.
Next: Re: 64-bit EPICS anyone? Ernest L. Williams Jr.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024