EPICS Controls Argonne National Laboratory

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  <20152016  2017  2018  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  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: How to update CSS version 3.x to 4.x ?
From: "Kasemir, Kay" <[email protected]>
To: Florian Feldbauer <[email protected]>
Cc: Patard Charles-Henri <[email protected]>, Philippe Laurent <[email protected]>, "[email protected]" <[email protected]>
Date: Tue, 3 Nov 2015 13:28:52 +0000
Hi:

Thanks to Marcus for mentioning the CS-Studio book: 
http://cs-studio.sourceforge.net/docbook/ 
Esp. Chapter 4: Compiling, Running, Debugging CSS.

Yes, that’s where I continue to try to describe how to build CSS.
If you follow that to build diirt, maven-osgi-bundles, cs-studio-thirdparty, cs-studio and the org.csstudio.sns.product, you’ll get the RDB-based archive engine as well.
.. but the diirt config may right now be incomplete, and the section on loading a *.target file into the IDE doesn’t apply any more because of the ongoing changes.
Once I’m again able to build functioning products for SNS, I’ll try to update the dokbook.

Thanks,
Kay


> On Nov 3, 2015, at 5:03 AM, Florian Feldbauer <[email protected]> wrote:
> 
> Dear Kay,
> 
> I'm also interested in this topic.
> For the PANDA experiment I build a CSS Product based on version 3.1.1
> during my PhD thesis.
> Now we also would like to upgrade to the new version.
> 
> Unfortunately I have no idea how to use maven.
> Is there some documentation on how to build the individual packages,
> like diirt, maven-osgi-bundles,... ?
> I looked on github but could not find anything.
> 
> Another question: With cs-studio 3.1.1 we always used the BEAUTY
> ArchiveEngine.
> I have not found it in the current master branch of any of the packages
> you mentioned below.
> Did I miss it, or was it removed?
> 
> Best regards,
> Florian
> 
> On 11/02/2015 03:41 PM, Kasemir, Kay wrote:
>> On Nov 2, 2015, at 2:45 AM, Patard Charles-Henri <[email protected]> wrote:
>>> Hello,
>>> I’m trying to update CSS from version 3 to version 4. I need to update my CSS Spiral2 products from 3.x to 4.x.
>>> I created a clone from 4.1.x branch on git and import plugins into my workspace with Maven import. Some of needed plugins are missing in version 4.1 :
>>> ·         org.epics.util
>>> ·         org.epics.vtype
>>> ·         org.csstudio.platform.libs.jms
>>> Do I need to create a clone from  3.x branch and add missing plugins in my workspace ? Did plugins were replaced by others ? How can I do this update ?
>> Hello Charles-Henri:
>> 
>> Good question.
>> Unfortunately, I don’t have a good answer.
>> Half of the time I’m wondering myself how to build CSS.
>> 
>> For the 3.x sources, it was pretty straight forward:
>> * Get the CSS sources, either from the source repository or from a site-specific zip of a 3.x version.
>> * Start appropriate version of Eclipse RCP IDE, “Import existing project into workspace”
>> * Open one of the *.product files to launch, debug, export
>> 
>> As we moved to 4.x, two things changed:
>> 
>> We decided to remove 3rd party binaries like the jar files for JMS, JDBC, JCA/CAJ from the primary cs-studio repository. The org.csstudio.platform.libs.jms plugin for example is now in a cs-studio-thirdparty repo.
>> And we use maven for the headless build.
>> 
>> In combination, several pieces of 3rd party code were completely removed from our repositories and we instead depend on maven to download them from somewhere. The jython or org.epics.util plugins for example are only listed in https://github.com/ControlSystemStudio/maven-osgi-bundles/blob/4.1.x/repository/pom.xml so that maven downloads them for us.
>> The complete build process became this:
>> * Get the sources for maven-osgi-bundles, cs-studio-thirdparty, cs-studio and for example org.csstudio.product
>> * Build everything with maven on the command line. Maven fetches the missing pieces.
>> You could then use the resulting product binaries as a “target” for the Eclipse IDE, import the sources, continue as before.
>> 
>> The part where maven fetches the missing pieces has not been without problems. Even when it all “works”, my time for a complete rebuild went from 20 to 60 minutes. Since build errors tend to happen in the later stages, I’m easily loosing days every month working through build problems.
>> 
>> As for org.epics.util & org.epics.vtype, they have just been renamed to org.diirt.*, and their code is in https://github.com/ControlSystemStudio/diirt, so the build process is right now:
>> * Get the sources for diirt, maven-osgi-bundles, cs-studio-thirdparty, cs-studio and for example org.csstudio.product
>> * Build everything with maven on the command line.
>> .. and there are some configuration details of diirt that require the addition of certain xml files to your product, since it’s no longer tied to the Eclipse preferences. The org.csstudio.product should include an example.
>> 
>> At the recent EPICS/ICALEPCS, the present CS-Studio developers agreed that it’d be good to have a better handle on the 3rd party libraries (https://github.com/ControlSystemStudio/cs-studio/issues/1417 )
>> For example, offering a zipped cs-studio-target would allow you to do this:
>> 
>> * Get the current cs-studio-target.zip, unpack
>> * Get the CSS sources, either from the source repository or from a site-specific zip of a 3.x version.
>> * Start appropriate version of Eclipse RCP IDE, set the RCP target to the cs-studio-target, “Import existing project into workspace” to load the sources
>> * Open one of the *.product files to launch, debug, export
>> 
>> This would remove the sometimes unpredictable or fragile and always slow dependency on maven to locate and successfully download the correct dependencies. Everybody who uses the same cs-studio-target.zip will get the same results.
>> 
>> Meanwhile, if you’re updating from 3.x it might be best to skip 4.1 (with org.epics.*) and instead start with the current master (with org.diirt.*), except that I’m still trying to create functional SNS products from that myself.
>> 
>> Thanks,
>> Kay
>> 
>> 
> 
> 
> -- 
> ----------------------------------------
> | Dr. Florian Feldbauer                |
> |                                      |
> | Helmholtz-Institut Mainz /           |
> | Johannes Gutenberg-Universität Mainz |
> | Johann-Joachim-Becher-Weg 36         |
> | D-55128 Mainz                        |
> |                                      |
> | Office: SB1 / 00-213                 |
> | Phone:  (+49)6131 / 39-29608         |
> ----------------------------------------
> 
> 



Replies:
RE: How to update CSS version 3.x to 4.x ? Patard Charles-Henri
References:
How to update CSS version 3.x to 4.x ? Patard Charles-Henri
Re: How to update CSS version 3.x to 4.x ? Kasemir, Kay
Re: How to update CSS version 3.x to 4.x ? Florian Feldbauer

Navigate by Date:
Prev: Re: How to update CSS version 3.x to 4.x ? marcus . michalsky
Next: RE: Unable to build support modules on Windows, with base 3.15.2 Heesterman, Peter J
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: How to update CSS version 3.x to 4.x ? marcus . michalsky
Next: RE: How to update CSS version 3.x to 4.x ? Patard Charles-Henri
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·