EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Problem building areaDetector with base7.0.1-rc1
From: Michael Davidsaver <[email protected]>
To: Andrew Johnson <[email protected]>, Mark Rivers <[email protected]>, "[email protected]" <[email protected]>
Date: Tue, 5 Dec 2017 21:53:38 -0500
On 12/05/2017 12:17 PM, Andrew Johnson wrote:
> Hi Mark,
> 
> I can't help you directly myself as I don't know the PVA API, and from
> his silence in recent days I suspect Michael is busy (he may be in
> Florida).

Your suspicion is correct.  December is going to be a busy month for me.

> However if you read the release notes for both pvData and
> pvAccess (linked from the Base-7.0.1 web-page) they have some summaries
> of required application changes which clean up a whole raft of potential
> and real memory leaks and other problems.
> 
> That said, the error below might just need a 'const' keyword adding to a
> declaration somewhere, that is mentioned as one change in the pvAccess
> notes.

This "breakage" is due to my optimizing PVUnion.  I write "breakage"
because this line wasn't doing what you expected/wanted.
PVUnion::get() used to return a temporary.  reset()ing the temporary
was valid, but had no effect on the PVUnion.  Now a const reference is
returned, which explicitly fails to compile.

Also, previously it wasn't possible to clear a discriminating PVUnion at all.
Now it works for all union types.

https://github.com/epics-base/pvDataCPP/issues/47


> - Andrew
> 
> 
> On 12/04/2017 06:39 PM, Mark Rivers wrote:
>> I am now working through building synApps and areaDetector with 7.0.01-rc1.
>>
>> I get this error when building areaDetector on linux-x86-64:
>>
>> make[5]: Entering directory
>> `/home/epics/devel-base7/areaDetector-3-1/ADCore/ADApp/ntndArrayConverterSrc/O.linux-x86_64'
>>
>> /usr/bin/g++  -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/corvette/usr/local/epics-devel/base-7.0.1/include/compiler/gcc
>> -I/corvette/usr/local/epics-devel/base-7.0.1/include/os/Linux
>> -I/corvette/usr/local/epics-devel/base-7.0.1/include     
>> -I/corvette/home/epics/devel-base7/asyn-4-32/include 
>> -I/corvette/home/epics/devel-base7/areaDetector-3-1/ADSupport/include/os/Linux
>> -I/corvette/home/epics/devel-base7/areaDetector-3-1/ADSupport/include  
>> -I/corvette/home/epics/devel-base7/areaDetector-3-1/ADCore/include                   
>> -c ../ntndArrayConverter.cpp
>>
>> ../ntndArrayConverter.cpp: In member function 'void
>> NTNDArrayConverter::fromUndefinedAttribute(epics::pvData::PVStructurePtr)':
>>
>> ../ntndArrayConverter.cpp:497:54: error: passing 'const PVFieldPtr {aka
>> const std::tr1::shared_ptr<epics::pvData::PVField>}' as 'this' argument
>> of 'void std::tr1::__shared_ptr<_Tp, _Lp>::reset() [with _Tp =
>> epics::pvData::PVField; __gnu_cxx::_Lock_policy _Lp =
>> (__gnu_cxx::_Lock_policy)2u]' discards qualifiers [-fpermissive]
>>
>>      dest->getSubField<PVUnion>("value")->get().reset();
> 


References:
Problem building areaDetector with base7.0.1-rc1 Mark Rivers
Re: Problem building areaDetector with base7.0.1-rc1 Andrew Johnson

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