Experimental Physics and
| |||||||||||||||
|
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
| ||||||||||||||
ANJ, 24 Mar 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |