Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017 Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
<== Date ==> <== Thread ==>

Subject: Re: Link problem in areaDetector with pva libraries
From: Andrew Johnson <anj@aps.anl.gov>
To: Mark Rivers <rivers@cars.uchicago.edu>, "core-talk@aps.anl.gov" <core-talk@aps.anl.gov>
Date: Tue, 5 Dec 2017 16:00:13 -0600
On 12/05/2017 03:37 PM, Mark Rivers wrote:
> I added pvAccessIOC to commonDriverMakefile and that fixed the link problem.
> 
> However, since that is a new library, how can I have my Makefile only link
> that library if I am building with EPICS 7 and not link it with
EPICS4-CPP-4.6.0?

xxx_LIBS += nt pvDatabase
ifdef EPICS_BASE_PVA_CORE_LIBS
  xxx_LIBS += $(EPICS_BASE_PVA_CORE_LIBS)
else
  xxx_LIBS += pvAccess pvData
endif

You could test for the new BASE_7_0 variable instead, but the above is
better. As with our previous practice, in this release BASE_7_0 = YES
and the older BASE_3_16 BASE_3_15 and BASE_3_14 variables still exist
but all have the value NO. See the comments at the top of the file
base/configure/CONFIG_BASE_VERSION for how to use these.

- Andrew


>> -----Original Message-----
>> From: core-talk-bounces@aps.anl.gov [mailto:core-talk-bounces@aps.anl.gov] On Behalf
>> Of Andrew Johnson
>> Sent: Tuesday, December 05, 2017 3:14 PM
>> To: core-talk@aps.anl.gov
>> Subject: Re: Link problem in areaDetector with pva libraries
>>
>> Hi Mark,
>>
>> On 12/05/2017 02:28 PM, Mark Rivers wrote:
>>> Thanks to a suggestion from Bruno ADCore now compiles OK.
>>
>> Great.
>>
>>> I now have a problem when linking the IOC applications:
>>
>>> -lsimDetector -lNDPlugin -lADBase -lntndArrayConverter -lnt -lpvDatabase
>>> -lpvAccess -lpvData
>>> -lnetCDF -lMagick++ -lcoders -lMagick -ljbig -ljp2 -lbzlib -lpng -lwebp
>>> -llcms -lttf -lwmf
>>> -lfilters -ltiff -ljpeg -lxml2 -lNeXus -lhdf5 -lblosc -lszip -lzlib
>>> -lasyn -lautosave -lbusy -lcalc
>>> -ldevIocStats -lsscan -lseq -lpv -ldbRecStd -ldbCore -lca -lCom
>>> -Wl,-Bdynamic -lX11 -lXext -lpthread
>>> -lreadline -lm -lrt -ldl -lgcc
>>
>>> undefined reference to `pvar_func_refTrackRegistrar'
>>> undefined reference to `pvar_func_registerStartPVAServer'
>>
>>> Is this a problem with the order of link libraries?
>>
>> I believe those particular routines are found in libpvAccessIOC which I
>> don't see in your link line at all. That's a new library in this
>> release, as is libpvAccessCA although you might not need that.
>>
>>> When using EPICS 7 does one still need to link explicitly with pvAccess,
>>> pvDatabase, etc. or are those included in EPICS_BASE_IOC_LIBS or some
>>> other symbol?
>>
>> We provide a new variable EPICS_BASE_PVA_CORE_LIBS which contains the
>> core PVA libraries (put this in your *_LIBS before EPICS_BASE_IOC_LIBS):
>>
>>> EPICS_BASE_PVA_CORE_LIBS = pvAccessIOC pvAccessCA pvAccess pvData
>>
>> Note that neither nt nor pvDatabase are included there, they still need
>> to appear before the above variable. If you want the IOC to be able to
>> serve records over pvAccess and your DBD file includes qsrv.dbd you will
>> also need the qsrv library, also before either of the variables.
>>
>> HTH,
>>
>> - Andrew
>>
>> --
>> Arguing for surveillance because you have nothing to hide is no
>> different than making the claim, "I don't care about freedom of
>> speech because I have nothing to say." -- Edward Snowdon

-- 
Arguing for surveillance because you have nothing to hide is no
different than making the claim, "I don't care about freedom of
speech because I have nothing to say." -- Edward Snowdon

References:
Link problem in areaDetector with pva libraries Mark Rivers
Re: Link problem in areaDetector with pva libraries Andrew Johnson
RE: Link problem in areaDetector with pva libraries Mark Rivers

Navigate by Date:
Prev: RE: Link problem in areaDetector with pva libraries Mark Rivers
Next: Re: Problem building areaDetector with base7.0.1-rc1 Michael Davidsaver
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
Navigate by Thread:
Prev: RE: Link problem in areaDetector with pva libraries Mark Rivers
Next: EPICS 7 and boost Dirk Zimoch
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
ANJ, 06 Dec 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·