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  <20182019  2020  2021  2022  2023  2024  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  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: calc support compilation
From: Mark Rivers <[email protected]>
To: Vishnu Patel <[email protected]>, techtalk <[email protected]>
Date: Thu, 22 Feb 2018 11:59:05 +0000
> ../sseqRecord.c: In function ‘putCallbackCB’:
> ../sseqRecord.c:536:42: error: ‘struct pv_link’ has no member named ‘precord’
>  pR = (sseqRecord *)(plink->value.pv_link.precord);


When you get an error like this when moving to a new version of base you should always check to see if there is a more recent version of the module with the error.  In this case calc R3-7 was released in December 2017. It contains this change for the sseq record that fixes the error you are seeing.


corvette:calc/calcApp/src>git diff R3-6-1 R3-7 sseqRecord.c
diff --git a/calcApp/src/sseqRecord.c b/calcApp/src/sseqRecord.c
index c084658..a2ed1a9 100644
--- a/calcApp/src/sseqRecord.c
+++ b/calcApp/src/sseqRecord.c
@@ -533,7 +533,11 @@ void putCallbackCB(void *arg)
        }


+#if LT_EPICSBASE(3,16,0,1)
        pR = (sseqRecord *)(plink->value.pv_link.precord);
+#else
+       pR = (sseqRecord *)(plink->precord);
+#endif
        pcb = (struct callbackSeq *) (pR->dpvt);
        /* If sequence was aborted, waiting fields may already have been cleared. */
        if (plinkGroupThis->waiting == 0) {


Mark





________________________________
From: [email protected] <[email protected]> on behalf of Vishnu Patel <[email protected]>
Sent: Wednesday, February 21, 2018 11:06 PM
To: techtalk
Subject: calc support compilation

Hi,

While compiling calc-3.6.1 from synApps_5_8. i am getting below error
../sseqRecord.c:145:1: warning: ‘rset’ is deprecated [-Wdeprecated-declarations]
 epicsExportAddress(rset, sseqRSET);
 ^
In file included from ../../../../../../base-3.16.1/include/dbBase.h:21:0,
                 from ../../../../../../base-3.16.1/include/dbAccess.h:19,
                 from ../sseqRecord.c:40:
../../../../../../base-3.16.1/include/recSup.h:67:8: note: declared here
 struct rset { /* record support entry table */
        ^
../sseqRecord.c: In function ‘processNextLink’:
../sseqRecord.c:414:13: warning: ‘rset’ is deprecated [-Wdeprecated-declarations]
   (*(struct rset *)(pR->rset)).process(pR);
             ^
In file included from ../../../../../../base-3.16.1/include/dbBase.h:21:0,
                 from ../../../../../../base-3.16.1/include/dbAccess.h:19,
                 from ../sseqRecord.c:40:
../../../../../../base-3.16.1/include/recSup.h:67:8: note: declared here
 struct rset { /* record support entry table */
        ^
../sseqRecord.c: In function ‘putCallbackCB’:
../sseqRecord.c:536:42: error: ‘struct pv_link’ has no member named ‘precord’
  pR = (sseqRecord *)(plink->value.pv_link.precord);
                                          ^
../sseqRecord.c:563:14: warning: ‘rset’ is deprecated [-Wdeprecated-declarations]
    (*(struct rset *)(pR->rset)).process(pR);
              ^
In file included from ../../../../../../base-3.16.1/include/dbBase.h:21:0,
                 from ../../../../../../base-3.16.1/include/dbAccess.h:19,
                 from ../sseqRecord.c:40:
../../../../../../base-3.16.1/include/recSup.h:67:8: note: declared here
 struct rset { /* record support entry table */
        ^
../sseqRecord.c: In function ‘processCallback’:
../sseqRecord.c:619:13: warning: ‘rset’ is deprecated [-Wdeprecated-declarations]
   (*(struct rset *)(pR->rset)).process(pR);
             ^
In file included from ../../../../../../base-3.16.1/include/dbBase.h:21:0,
                 from ../../../../../../base-3.16.1/include/dbAccess.h:19,
                 from ../sseqRecord.c:40:
../../../../../../base-3.16.1/include/recSup.h:67:8: note: declared here
 struct rset { /* record support entry table */
        ^
../sseqRecord.c:604:18: warning: variable ‘did_putCallback’ set but not used [-Wunused-but-set-variable]
  int     status, did_putCallback=0;
                  ^
../../../../../../base-3.16.1/configure/RULES_BUILD:230: recipe for target 'sseqRecord.o' failed
make[3]: *** [sseqRecord.o] Error 1
make[3]: Leaving directory '/home/dacda/epics/modules/support/calc-3.6.1/calcApp/src/O.linux-x86_64'
../../../../../base-3.16.1/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed
make[2]: *** [install.linux-x86_64] Error 2
make[2]: Leaving directory '/home/dacda/epics/modules/support/calc-3.6.1/calcApp/src'
../../../../base-3.16.1/configure/RULES_DIRS:84: recipe for target 'src.install' failed
make[1]: *** [src.install] Error 2
../../../base-3.16.1/configure/RULES_DIRS:84: recipe for target 'calcApp.install' failed
make: *** [calcApp.install] Error 2



I already compiled sscan-2-10-1.

Thanks
Vishnu


References:
calc support compilation Vishnu Patel

Navigate by Date:
Prev: calc support compilation Vishnu Patel
Next: RE: Possible issue with epics-base 7 compilation Mark Rivers
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  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: calc support compilation Vishnu Patel
Next: Asyn not automatically reconnecting Daykin, Evan
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  <20182019  2020  2021  2022  2023  2024 
ANJ, 22 Feb 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·