Old LArSoftWiki » History » Version 71

Version 70 (Erica Snider, 12/11/2013 04:03 AM) → Version 71/136 (Erica Snider, 12/11/2013 08:28 PM)

If you are looking for the legacy cvs-based LArSoft site that was previously hosted on this site, note that *all content has been moved to "LArSoft cvs (legacy site) ":*
If you are looking for the legacy svn-based LArSoft site, "go here":


This is the beta LArSoft redmine project and the future home of the LArSoft redmine project.

h1. LArSoftWiki (beta)

*This page is in beta and content is still under construction.* Will go live when the migration to git/cmake is completed.

The LArSoft software is designed to work for all planned and running liquid argon experiments at Fermilab. It is written in C++ and built on the "ROOT": data analysis software, and the "art": analysis framework supported by the Fermilab Scientific Computing Division for intensity frontier experiments.

To join the LArSoft mailing list, please follow these "instructions": using the list name LARSOFT.

h1. Preliminaries

* *Beta testers: [[ Special instructions for beta testers | read this first ]]*
* Fermilab computing accounts: see the instructions on the [[larsoftsvn:Fermilab Computing Access]] page if you need an account.
* See [[larsoftsvn:Load Balanced Access to General Purpose VMs]] for information on accessing experiment VMs at Fermilab (e.g., lbnegpvm0X, uboonegpvm0X, etc., collectively known as GPCF.).
* See the [[LArSoftWiki#documentation|documentation]] section for information on working with/developing LArSoft code, and using git, git flow, mrb and other tools you will need.
* The procedures and tools for building and developing software with this system are _completely different_ from those of the previous system based on svn repositories and the SoftRelTools build system. See the [[LArSoftWiki#documentation|documentation]] section for details.

h2. Where to find the software

* [[ The Fermilab core LArSoft installation ]]

* [[ Experiment-specific code and re-factoring ]]

h1. Release notes

| *Release* | *Date* | *Purpose* | *Changes / notes* | *Full release notes* |
| v1.00.00| Jan 2014 | First production
release | Replica of final svn-based release. Future LArSoft development
proceeds from this release. | xxx |
| v0.0x.yy| 12/10/2013| "beta" public release | Beta suitable for general user testing | N/A |
| v0.01.01| 12/02/2013| "beta" limited release | Beta suitable for expert testing | N/A |
| v0.00.09| 11/25/2013| "beta" pre-release | Second full release under new system. First full re-factoring
of experiment-specific and core LArSoft code in the larcore,
lardata, larevt, and larsim products. Preparation for expert
user testing of beta release.| N/A|
| v0.00.04| 9/15/2013| "alpha" release | First release of git/cmake/ups-based LArSoft products
Used for mrb, configuration and re-factoring
development and testing | N/A |

h1. Documentation

h2. Overview of the user and developer environment

* [[ The user environment ]]
* [[ The deveoper environment ]]

[[Overview of the user and developer environment]]

h2. Working with LArSoft

* [[ LArSoft repositories, packages and dependencies ]]
* [[
Quick-start guide to using and developing LArSoft code ]]
* [[ Detailed documentation on using and developing LArSoft repositories, packages and dependencies code ]]
* *[[ Special instructions for beta testers ]]*

* [[larsoftsvn:Using the Framework]]
* "ART Tutorial":
* [[larsoftsvn:NuSoft and LArSoft|nutools and LArSoft]]
* [[Using LArSoft on the GPVM nodes]]

h2. Links to the tools used in working with the software

git and git flow:
* [[cet-is-public:git flow quick start]] (edited 2/4/2013).
* [[cet-is-public:Marc's suggested git workflow]]
* [[cet-is-public:GitTipsAndTricks|Git Tips and Tricks]]

Understanding CMakeLists.txt and product_deps files:
* [[cet-is-public:Cetbuildtools cmake modules]]: such as @cet_make@ and @cet_add_compiler_flags@. Used in @CMakeLists.txt@ files throughout LArSoft [[cet-is-public:Building your own code with cmake]]
* [[cet-is-public:Art cmake modules]]: such as @art_make@ and @simple_plugin@. Used in @CMakeLists.txt@ files throughout LArSoft
[[cet-is-public:Defining products in the CET build environment]]: explains the @product_deps@ file environment]]
* [[cet-is-public:AddingProductDependencies|Adding Product Dependencies]]: how to edit the @product_deps@ and @CMakeLists.txt@ files to add dependencies Dependencies]]
* [[cet-is-public:CodeTips|Various helpful tips for coding in the CET C++ environment]]: things you hope you never need to know

* [[cet-is-public:Building your own code with cmake]]: pointer to a _really_ simple example

mrb and ups:
* mrb
: the multi-repository build tool
* Re-locatable ups

h1. How-to's

h2. Advanced technical how-to's

h2. Release procedures

h1. Walk-through exercises

h1. LArSoft code management and distribution procedures

h1. Working areas

[[Beta re-factoring]]

[[ Detailed documentation on using and developing LArSoft code ]] : not a resource