Experimental Physics and Industrial Control System
The call for dbGetLinkValue() in device driver file while building with EPICS base-3.15.6 generates error as
undefined reference to `dbGetLinkValue'
The command line output of buliding ioc is attached for reference.
The same ioc is built with base-3.14.12.7 without error. Kindly help.
Regards
Anindya
VECC
, Kolkata, India
make -C ./configure install
make[1]: Entering directory `/TS-7600/epics/DEFPS_IOC/configure'
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/makeMakefile.pl O.linux-x86_64 ../..
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/makeMakefile.pl O.linux-arm ../..
mkdir O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
T_A=linux-x86_64 install
make[2]: Entering directory `/TS-7600/epics/DEFPS_IOC/configure/O.linux-x86_64'
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/convertRelease.pl checkRelease
make[2]: Leaving directory `/TS-7600/epics/DEFPS_IOC/configure/O.linux-x86_64'
make -C O.linux-arm -f ../Makefile TOP=../.. \
T_A=linux-arm install
make[2]: Entering directory `/TS-7600/epics/DEFPS_IOC/configure/O.linux-arm'
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/convertRelease.pl checkRelease
make[2]: Leaving directory `/TS-7600/epics/DEFPS_IOC/configure/O.linux-arm'
make[1]: Leaving directory `/TS-7600/epics/DEFPS_IOC/configure'
make -C ./rtcMpsApp install
make[1]: Entering directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp'
make -C ./src install
make[2]: Entering directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src'
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/makeMakefile.pl O.linux-x86_64 ../../..
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/makeMakefile.pl O.linux-arm ../../..
mkdir O.Common
make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \
T_A=linux-x86_64 install
make[3]: Entering directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src/O.linux-x86_64'
/usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -MM -MF devRTCDEFLECTOR.d ../devRTCDEFLECTOR.c
/usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -MM -MF rtcMpsComm.d ../rtcMpsComm.c
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -MM -MF rtcMpsMain.d ../rtcMpsMain.cpp
Creating dbd file rtcMps.dbd
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -I/TS-7600/epics/base-3.15.6/dbd -o rtcMps.dbd base.dbd rtcMpsSupport.dbd
perl -CSD /TS-7600/epics/base-3.15.6/bin/linux-x86_64/registerRecordDeviceDriver.pl -I. -I.. -I../O.Common -I../../../dbd -I/TS-7600/epics/base-3.15.6/dbd -o rtcMps_registerRecordDeviceDriver.cpp ../O.Common/rtcMps.dbd rtcMps_registerRecordDeviceDriver /TS-7600/epics/DEFPS_IOC
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -MM -MF rtcMps_registerRecordDeviceDriver.d rtcMps_registerRecordDeviceDriver.cpp
make[3]: Leaving directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src/O.linux-x86_64'
make[3]: Entering directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src/O.linux-x86_64'
Installing created dbd file ../../../dbd/rtcMps.dbd
/usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -c ../rtcMpsComm.c
/usr/bin/gcc -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -c ../devRTCDEFLECTOR.c
../devRTCDEFLECTOR.c: In function â??init_longinâ??:
../devRTCDEFLECTOR.c:190:3: warning: format â??%[^, â?? expects argument of type â??char *â??, but argument 4 has type â??int *â?? [-Wformat=]
sscanf(plongin->inp.value.instio.string, "%d,%[^,\t]d", &node, &psCmd);
^
../devRTCDEFLECTOR.c:186:19: warning: unused variable â??respâ?? [-Wunused-variable]
char *cmd=NULL, *resp=NULL;
^
../devRTCDEFLECTOR.c:186:8: warning: unused variable â??cmdâ?? [-Wunused-variable]
char *cmd=NULL, *resp=NULL;
^
../devRTCDEFLECTOR.c:185:7: warning: unused variable â??tempValâ?? [-Wunused-variable]
long tempVal=0;
^
../devRTCDEFLECTOR.c:184:37: warning: unused variable â??cntâ?? [-Wunused-variable]
int status=0, node, ret, incRet=0, cnt=0, psCmd;
^
../devRTCDEFLECTOR.c:184:27: warning: unused variable â??incRetâ?? [-Wunused-variable]
int status=0, node, ret, incRet=0, cnt=0, psCmd;
^
../devRTCDEFLECTOR.c:184:22: warning: unused variable â??retâ?? [-Wunused-variable]
int status=0, node, ret, incRet=0, cnt=0, psCmd;
^
../devRTCDEFLECTOR.c: In function â??read_longinâ??:
../devRTCDEFLECTOR.c:263:7: warning: unused variable â??tempValâ?? [-Wunused-variable]
long tempVal=0;
^
../devRTCDEFLECTOR.c:262:34: warning: unused variable â??iâ?? [-Wunused-variable]
int node, ret, incRet=0, cnt=0, i, psCmd, paramIndx, chkSum;
^
../devRTCDEFLECTOR.c: In function â??init_longoutâ??:
../devRTCDEFLECTOR.c:394:3: warning: format â??%[^
â?? expects argument of type â??char *â??, but argument 4 has type â??int *â?? [-Wformat=]
sscanf(plongout->out.value.instio.string, "%d,%[^\t\n]d", &node, &psCmd);
^
../devRTCDEFLECTOR.c: In function â??write_calcoutâ??:
../devRTCDEFLECTOR.c:640:4: warning: implicit declaration of function â??dbGetLinkValueâ?? [-Wimplicit-function-declaration]
dbGetLinkValue(plink, DBR_DOUBLE, pvalue, NULL, NULL); //base-3.14
^
../devRTCDEFLECTOR.c:629:28: warning: variable â??instCurrentRangeAiâ?? set but not used [-Wunused-but-set-variable]
float instVoltageRangeAi, instCurrentRangeAi;
^
../devRTCDEFLECTOR.c:627:87: warning: unused variable â??oprnSetCurrentLoâ?? [-Wunused-variable]
int psIndex, oprnMode, opiSetVoltageLi, opiSetCurrentLi, adcCount, oprnSetVoltageLo, oprnSetCurrentLo, i;
^
../devRTCDEFLECTOR.c:627:42: warning: unused variable â??opiSetCurrentLiâ?? [-Wunused-variable]
int psIndex, oprnMode, opiSetVoltageLi, opiSetCurrentLi, adcCount, oprnSetVoltageLo, oprnSetCurrentLo, i;
^
../devRTCDEFLECTOR.c:627:25: warning: unused variable â??opiSetVoltageLiâ?? [-Wunused-variable]
int psIndex, oprnMode, opiSetVoltageLi, opiSetCurrentLi, adcCount, oprnSetVoltageLo, oprnSetCurrentLo, i;
^
../devRTCDEFLECTOR.c:625:7: warning: unused variable â??tempâ?? [-Wunused-variable]
char temp[40];
^
../devRTCDEFLECTOR.c:622:11: warning: unused variable â??statusâ?? [-Wunused-variable]
long status;
^
/usr/bin/ar -rc librtcMpsSupport.a rtcMpsComm.o devRTCDEFLECTOR.o
/usr/bin/ranlib librtcMpsSupport.a
/usr/bin/g++ -o librtcMpsSupport.so -shared -fPIC -Wl,-hlibrtcMpsSupport.so -L/TS-7600/epics/DEFPS_IOC/lib/linux-x86_64 -L/TS-7600/epics/base-3.15.6/lib/linux-x86_64 -Wl,-rpath,/TS-7600/epics/DEFPS_IOC/lib/linux-x86_64 -Wl,-rpath,/TS-7600/epics/base-3.15.6/lib/linux-x86_64 -rdynamic -m64 rtcMpsComm.o devRTCDEFLECTOR.o -ldbRecStd -ldbCore -lca -lCom -lpthread -lreadline -lm -lrt -ldl -lgcc
Installing shared library ../../../lib/linux-x86_64/librtcMpsSupport.so
Installing library ../../../lib/linux-x86_64/librtcMpsSupport.a
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -c rtcMps_registerRecordDeviceDriver.cpp
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/TS-7600/epics/base-3.15.6/include/compiler/gcc -I/TS-7600/epics/base-3.15.6/include/os/Linux -I/TS-7600/epics/base-3.15.6/include -c ../rtcMpsMain.cpp
/usr/bin/g++ -o rtcMps -L/TS-7600/epics/DEFPS_IOC/lib/linux-x86_64 -L/TS-7600/epics/base-3.15.6/lib/linux-x86_64 -Wl,-rpath,/TS-7600/epics/DEFPS_IOC/lib/linux-x86_64 -Wl,-rpath,/TS-7600/epics/base-3.15.6/lib/linux-x86_64 -rdynamic -m64 rtcMps_registerRecordDeviceDriver.o rtcMpsMain.o -lrtcMpsSupport -ldbRecStd -ldbCore -lca -lCom
/TS-7600/epics/DEFPS_IOC/lib/linux-x86_64/librtcMpsSupport.so: undefined reference to `dbGetLinkValue'
collect2: error: ld returned 1 exit status
make[3]: *** [rtcMps] Error 1
make[3]: Leaving directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src/O.linux-x86_64'
make[2]: *** [install.linux-x86_64] Error 2
make[2]: Leaving directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp/src'
make[1]: *** [src.install] Error 2
make[1]: Leaving directory `/TS-7600/epics/DEFPS_IOC/rtcMpsApp'
make: *** [rtcMpsApp.install] Error 2
- Replies:
- Re: error calling dbGetLinkValue in EPICS base-3.15.6 Mark Rivers via Tech-talk
- Navigate by Date:
- Prev:
Re: monitors on array variables Michael Davidsaver via Tech-talk
- Next:
Re: error calling dbGetLinkValue in EPICS base-3.15.6 Mark Rivers 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
2023
2024
- Navigate by Thread:
- Prev:
Re: monitors on array variables Siddons, David via Tech-talk
- Next:
Re: error calling dbGetLinkValue in EPICS base-3.15.6 Mark Rivers 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
2023
2024