EPICS Home

Experimental Physics and Industrial Control System


 
1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  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: EPICS areadetecto and EPICSV4
From: Mark Rivers <[email protected]>
To: "Gofron, Kazimierz" <[email protected]>, "'[email protected]'" <[email protected]>
Cc: "'[email protected]'" <[email protected]>
Date: Thu, 12 Oct 2017 07:40:48 +0000
Hi Kaz,

I think you are referring to a different problem that occurs with more recent unreleased versions of the V4 code after pvAccess was split into 3 libraries.

Jorn's problem was coming from the fact that he defined PVACCESS, etc. in a CONFIG file rather than in a RELEASE file.  These type of definitions must be done in a RELEASE file in order to have the EPICS build system know to search those modules for include files and libraries.

Mark

________________________________
From: Gofron, Kazimierz [[email protected]]
Sent: Wednesday, October 11, 2017 4:04 PM
To: '[email protected]'
Cc: '[email protected]'; Mark Rivers
Subject: RE: EPICS areadetecto and EPICSV4


Hi,



This should be fixed in EPICSV4 or subsequent, and was discussed in recent EPICS core developer meeting in ITHER. This is related to splitting pvAccess into 3 libraries.

In the meantime, a fix that worked for me is to include all 3 libraries on line 24 of:



areaDetector/ADCore /ADApp/commonDriverMakefile



{Replace}

  PROD_LIBS += pvAccess



{With this}

PROD_LIBS += pvAccessIOC pvAccessCA pvAccess

-----

This will allow proper build of all IOC’s build with areaDetector that include EPICSV4.



Kazimierz

----------------------



Message: http://www.aps.anl.gov/epics/tech-talk/2017/msg01606.php

Date: Wed, 11 Oct 2017 09:17:47 +0000

From: Mark Rivers <[email protected]<mailto:[email protected]>>

To: 'J?rn Dreyer' <[email protected]<mailto:[email protected]>>,    "[email protected]<mailto:[email protected]>"

              <[email protected]<mailto:[email protected]>>

Subject: RE: EPICS areadetecto and EPICSV4

Message-ID:

              <70AE7462E7AD054C89DCBA45343D499A660F6E67@CARSMAIL2.CARS.APS.ANL.GOV<70AE7462E7AD054C89DCBA45343D499A660F6E67@CARSMAIL2.CARS.APS.ANL.GOV">mailto:70AE7462E7AD054C89DCBA45343D499A660F6E67@CARSMAIL2.CARS.APS.ANL.GOV>>

Content-Type: text/plain; charset="utf-8"



I think those definitions need to be in a RELEASE file for the build system to add them to the directories to be searched.  My understanding is that RELEASE files are read both by make and by perl, while CONFIG files are read only by make.



Mark





-----Original Message-----

From: J?rn Dreyer [mailto:[email protected]]

Sent: Wednesday, October 11, 2017 4:12 AM

To: [email protected]<mailto:[email protected]>

Cc: Mark Rivers

Subject: Re: EPICS areadetecto and EPICSV4



Thanks Mark,



that solved the problem. I'm only puzzled why I can not define those variables in CONFIG_SITE.local. Doing so results in the exact same problem.



Regards,



J?rn



Am Mittwoch, 11. Oktober 2017, 11:02:54 CEST schrieb Mark Rivers:

> Hi J?rn,

>

> Does your IOC configure/RELEASE file define the individual V4 modules?

> It needs to do this:

>

> PVCOMMON=$(EV4_BASE)/pvCommonCPP

> PVACCESS=$(EV4_BASE)/pvAccessCPP

> PVDATA=$(EV4_BASE)/pvDataCPP

> PVDATABASE=$(EV4_BASE)/pvDatabaseCPP

> NORMATIVETYPES=$(EV4_BASE)/normativeTypesCPP

>

> If you still have problems please send the complete make output when

> you rebuild your IOC application.

>

> Mark

>

>

> ________________________________________

> From: [email protected]<mailto:[email protected]> [[email protected]] on

> behalf of J?rn Dreyer [[email protected]] Sent: Wednesday, October 11,

> 2017

> 3:40 AM

> To: [email protected]<mailto:[email protected]>

> Subject: Re: EPICS areadetecto and EPICSV4

>

> Hi Mark,

>

> in the areadetektor I have set up EV4_BASE correctly. Maybe I was not

> clear in my firs mail. I'm developing the IOC outside of the

> areadetector directory structure and thus not using its internal

> config files. But my environment defines EV4_BASE.

>

> Regards,

>

> J?rn

>

> Am Dienstag, 10. Oktober 2017, 14:28:14 CEST schrieb Mark Rivers:

> > HI J?rn,

> >

> > I am successfully doing what you are trying to do using

> > RELEASE*.local files that are identical to the

> > EXAMPLE_RELEASE*.local files in the master branch of  areaDetector/configure.

> >

> > I suspect you did not define the path to the V4 libraries in

> > RELEASE_PATHS.local.  This is the symbol EV4_BASE. My version of

> > that file contains these lines:

> >

> > # If CONFIG_SITE.local defines WITH_EPICS_V4=YES then define the path here

> > EV4_BASE     = /corvette/usr/local/epics-devel/epicsV4/EPICS-CPP-4.6.0

> >

> >

> > RELEASE_LIBS.local contains these lines:

> >

> > # V4 modules.

> > PVCOMMON=$(EV4_BASE)/pvCommonCPP

> > PVACCESS=$(EV4_BASE)/pvAccessCPP

> > PVDATA=$(EV4_BASE)/pvDataCPP

> > PVDATABASE=$(EV4_BASE)/pvDatabaseCPP

> > NORMATIVETYPES=$(EV4_BASE)/normativeTypesCPP

> >

> > Let me know if you still have problems.

> >

> > Mark

> >

> >

> >

> > ________________________________________

> > From: [email protected]<mailto:[email protected]> [[email protected]]

> > on behalf of J?rn Dreyer [[email protected]] Sent: Tuesday, October

> > 10, 2017

> > 7:14 AM

> > To: [email protected]<mailto:[email protected]>

> > Subject: EPICS areadetecto and EPICSV4

> >

> > Hi all,

> >

> > I have a probably stupid question concerning the use of EPICS V4 and

> > the areadetector code in an IOC.

> >

> > I'm trying to build an IOC with which I want to readout a GiGE based

> > camera. To do performance comparisons I also want to include the

> > EPICS V4 code. But If I enable WITH_EPICS_V4 in the Makefile, I fail

> > to find the

> > ?../../../lib/linux- x86_64/libpvDatabase.a? The makefile is

> > searching in the wrong directories. I included

> >

> > include $(AREADETECTOR)/ADCore/ADApp/commonDriverMakefile

> >

> > in my IOC makefile. And therein the EPICS V4 libraries are added to

> > PROD_LIBS. What variable do I need to set so that make will find

> > those libraries? If I change PROD_LIBS to PROD_SYS_LIBS, everything

> > compiles fine.

> >

> > With kind regards,

> >

> > J?rn Dreyer




Kazimierz Gofron
NSLS-II Controls Group
Brookhaven National Laboratory
(p) +1 (631) 344 5283
(f) +1 (631) 344 8085
(e) [email protected]<mailto:[email protected]>
(w) www.bnl.gov/nsls2<http://www.bnl.gov/nsls2>


Replies:
Re: EPICS areadetecto and EPICSV4 Michael Davidsaver
References:
RE: EPICS areadetecto and EPICSV4 Gofron, Kazimierz

Navigate by Date:
Prev: RE: EPICS areadetecto and EPICSV4 Gofron, Kazimierz
Next: Re: EPICS areadetecto and EPICSV4 Michael Davidsaver
Index: 1994  1995  1996  1997  1998  1999  2000  2001  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: EPICS areadetecto and EPICSV4 Gofron, Kazimierz
Next: Re: EPICS areadetecto and EPICSV4 Michael Davidsaver
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024