Experimental Physics and
| |||||||||||||||||
|
Hi Jay, we do use tpmac with EPICS-3.14.11. From your message it is hard to tell what exactly is wrong in your case, but I suspect something is messed with the Makefile or DBD files. In other words, I think this is not a tpmac problem, but rather one caused by a mistake in following synApps build rules. It may help to look how we package our IOC compilation directories at the GM/CA CAT. For that purpose I re-arranged the TPMAC distribution to include six examples from the GM/CA CAT (two IOCs per each of our three beamlines): http://www.gmca.aps.anl.gov/TPMAC2/tpmac3-7.zip These are: synApps/xxx_gmca23b_ioc1 synApps/xxx_gmca23b_ioc2 .... Try to comply with the same build style. SynApps build system is fragile and it is better to follow a good working example as much as possible. Hope it helps. -- Sergey On 10/13/2010 4:18 PM, Jay Steele wrote: 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
| ||||||||||||||||
ANJ, 14 Oct 2010 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |