Hi Tech-Talk,
To use the TurboPMAC VME board with a PPC mother board to control motors, I am trying to integrate tmac-3-7 with synApps_5_5 and epics/base-3-14-11 for my IOC named 21idbnp. I am having the following problem.
Any clues to its resolution or a workaround would be greatly appreciated.
tpmac-3-7 compiles with synApps. I added the statement "ioc21idbnpVX_DBD+=pmacInclude.dbd" to 21idbnpApp/src/Makefile. pmacInclude.dbd includes statusRecord.dbd, tsubRecord.dbd, statusDevice.dbd, pmacAsynIPPort.dbd,
pmacAsynMotor.dbd, pmacAsynCoord.dbd, and add_pmac.dbd. Then I compile the 21idbnp IOC that includes the tpmac libraries (pmacAsynCoord, pmacAsynIPPort, pmacAsynMotor, pmacIoc). This compiles for vxWorks without error.
When I load the munch file to vxworks, I get the following error.
ld(0,0,"21idbnp.munch")
Undefined symbol: pvar_dset_devPmac (binding 1 type 0)
Undefined symbol: pvar_dset_devPmacRamStatus (binding 1 type 0)
ld error: Module contains undefined symbol(s) and may be unusable.
value = 0 = 0x0
For my investigation, I see the following:
1. when compiling the IOC, -lpmacIoc, -lpmacAsynCoord, -lpmacAsynIPPort, and -lpmacAsynMotor are used with ld to create 21idbnp.
2. grep using the string "pvar_dset_devPmac" in the IOC directory results in the following:
a. binary file 21idbnp.munch matches.
b. ioc21idbnpVx_registerRecordDeviceDriver.cpp has references to pvar_dset_devPmac.
c. binary file 21idbnp matches.
d. binary file ioc21idbnpVx_registerRecordDeviceDriver.o matches.
e. 21idbnp.nm has references to pvar_dset_devPmac.
3. Same results as #2 above for string "pvar_dset_devPmacRamStatus"
Thanks,
Jay Steele
XRadia Corporation