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  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  <20232024  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  <20232024 
<== Date ==> <== Thread ==>

Subject: Re: Epics 7 on Mac M2 (arm64)
From: Heinz Junkes via Tech-talk <tech-talk at aps.anl.gov>
To: Han Lee <jeonglee at lbl.gov>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Wed, 23 Aug 2023 14:19:52 +0200
Hi Han,
Thanks for the quick reply. I can build epics-base with it and also 
the famous 'myExample" example with MakeBaseApp.pl -t example myExample.


I use an additional small support lib:


TOP=../..

include $(TOP)/configure/CONFIG
#----------------------------------------
#  ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
# Use typed rset structure (see 3.16.1 release notes)
USR_CPPFLAGS += -DUSE_TYPED_RSET

LIBRARY_IOC = rfcalc

DBD += rfcalc.dbd

rfcalc_SRCS += rfcalc.c
rfcalc_SRCS += rftime.c
rfcalc_LIBS += Com

#===========================

include $(TOP)/configure/RULES
#----------------------------------------
#  ADD RULES AFTER THIS LINE


And that looks like this in it, for example:


static
long init_record(waveformRecord* prec)
{
    switch (prec->inp.type) {
    case CONSTANT:
    case PV_LINK:
    case DB_LINK:
    case CA_LINK:
        break;
    default:
        recGblRecordError(S_db_badField, (void *)prec,
            "devWfTimebase (init_record) Illegal INP field");
        return S_db_badField;
    }
    if(prec->ftvl == menuFtypeSTRING || prec->ftvl==menuFtypeENUM){
        recGblRecordError(S_db_badField, (void *)prec,
            "devWfTimebase (init_record) Illegal FTVL field");
        return S_db_badField;
    }

    prec->dpvt=(void*)1; // indicate completion

    return 0;
}


Under RTEMS (T_A=RTEMS-beatnik) it can be built without problems.

Heinz



On 23. Aug 2023, at 12:41, Han Lee <jeonglee at lbl.gov> wrote:

Hi Heinz,

Do you have your own CONFIG file? 

I have only M1 and it uses aarch64. The current BASE supports without any local CONFIG files. 

Best,
Han

On Wed, Aug 23, 2023 at 02:32 Heinz Junkes via Tech-talk <tech-talk at aps.anl.gov> wrote:
Guten Tag,

I am facing the following problem and unfortunately I cannot resolve it:

Undefined symbols for architecture arm64:
  "_recGblInitConstantLink", referenced from:
      _make_timebase in rftime.o
  "_recGblRecordError", referenced from:
      _init_record in rftime.o
  "_recGblSetSevr", referenced from:
      _gen_waveform in rfcalc.o
      _wf_stats in rfcalc.o
      _unwrap in rfcalc.o
      _make_timebase in rftime.o
  "_registryFunctionRefAdd", referenced from:
      _calcRegister in rfcalc.o
ld: symbol(s) not found for architecture arm64


Danke,
Heinz
--
Jeong Han Lee, Dr.rer.nat


References:
Epics 7 on Mac M2 (arm64) Heinz Junkes via Tech-talk
Re: Epics 7 on Mac M2 (arm64) Han Lee via Tech-talk

Navigate by Date:
Prev: Re: Epics 7 on Mac M2 (arm64) Michael Davidsaver via Tech-talk
Next: mrfioc2 driver support Timo Korhonen via Tech-talk
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  <20232024 
Navigate by Thread:
Prev: Re: Epics 7 on Mac M2 (arm64) Han Lee via Tech-talk
Next: Re: Epics 7 on Mac M2 (arm64) Michael Davidsaver via Tech-talk
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  <20232024 
ANJ, 23 Aug 2023 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·