1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 <2023> 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 <2023> 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Cross Compilation of Epics-base |
From: | "Johnson, Andrew N. via Tech-talk" <tech-talk at aps.anl.gov> |
To: | nsrivastava <nsrivastava at bridge12.com>, "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Sun, 15 Oct 2023 00:20:20 +0000 |
Hi, I haven't seen any replies to your question here yet. I know many of our core developers have been at the ICALEPCS-2023 conference, and I'm on vacation this week and next, so my apologies if you're still waiting
for help. Unfortunately we don't have detailed documentation that answers your question (I agree that we should), but the majority of the configuration needed to set up your cross-builds may have already been done.
You haven’t said what your host architecture is, I hope it's Linux on 32- or 64-bit x86 or amd64, and that your target will be running under Linux. Assuming those are correct you would start by editing the file base-7.0.7/configure/os/CONFIG_SITE.linux-x86.linux-arm and change the GNU_DIR variable there to point to the prefix of where your cross-compiler
has been installed — the EPICS build system looks in $(GNU_DIR)/bin for the cross-compiler. Then edit the base-7.0.7/configure/CONFIG_SITE file and set CROSS_COMPILER_TARGET_ARCHS to linux-arm. You don't need to make any other changes in those files for now. With those settings you can try running "make" in the base-7.0.7/configure directory. That should create the directories O.linux-x86_64 and O.linux-arm, and inside each of those it will try to run the C Preprocessor
for that target. If you don't see the build in the O.linux-arm directory running your cross-compiler's preprocessor you will have to make some additional configuration changes, but you should copy the command-line it runs and any errors you get into a post
to this mailing list for help at that stage. If it did the right thing, cd to the base-7.0.7 directory and run "make" from there to see how far the build gets. Again if you see errors please copy & paste them into an email here (don't paste a screen-dump
image, text only). The more detail about your configuration and the errors you're seeing that you send to this list, the easier it will be for us to help. - Andrew |