Software Installation The full set of lecture notes of this Geant4 Course is available at

Slides:



Advertisements
Similar presentations
User Interface The full set of lecture notes of this Geant4 Course is available at
Advertisements

Using Eclipse. Getting Started There are three ways to create a Java project: 1:Select File > New > Project, 2 Select the arrow of the button in the upper.
LINUX-WINDOWS INTERACTION. One software allowing interaction between Linux and Windows is WINE. Wine allows Linux users to load Windows programs while.
Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002 Getting Started.
Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002 Getting Started.
Software Installation, release 4.0 Geant4 Users’ Workshop Tutorial SLAC February 18-22, 2002 Takashi Sasaki, Gabriele Cosmo,
Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Julie McEnery1 Installing the ScienceTools The release manager automatically compiles each release of the Science Tools, it creates a set of wrapper scripts.
1 SEEM3460 Tutorial Unix Introduction. 2 Introduction What is Unix? An operation system (OS), similar to Windows, MacOS X Why learn Unix? Greatest Software.
Introduction to The Linaro Toolchain Embedded Processors Training Multicore Software Applications Literature Number: SPRPXXX 1.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 4 Manage Software for SUSE Linux Enterprise Server.
SKA/KAT SPIN Presentation Software Engineering (!?) Robert Crida.
Mokka and integration of the geometry AIDA kick-off meeting WP2 session: Common software tools 17 February 2011 – CERN Paulo Mora de Freitas and Gabriel.
WORK ON CLUSTER HYBRILIT E. Aleksandrov 1, D. Belyakov 1, M. Matveev 1, M. Vala 1,2 1 Joint Institute for nuclear research, LIT, Russia 2 Institute for.
The introduction of CMT Version v1r14. General index 1.presentation 2.how to install CMT 3.how to write a requirements file 4.how to use CMT.
Isecur1ty training center Presented by : Eng. Mohammad Khreesha.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
Geant4 Installation Supported platforms:  Scientific Linux with gcc 4.1.2/4.6  Mac Os X 10.7 and 10.8 with gcc 4.21  Windows7 with Visual Studio.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
As of 28 Juni 2005Getting Starged with GEM - Shuei Yamada 1 Getting Started with GEM Shuei YAMADA ICEPP, University of Tokyo What is GEM? Before you start.
March 2, 2005Wah-kai Ngai1 Installation of Geant4 1st HK Simulation Meeting.
Active-HDL Interfaces Debugging C Code Course 10.
Interfaces to External EDA Tools Debussy Denali SWIFT™ Course 12.
FLUKA GUI Status FLUKA Meeting CERN, 10/7/2006.
V. Serbo, SLAC ACAT03, 1-5 December 2003 Interactive GUI for Geant4 by Victor Serbo, SLAC.
A Short Course on Geant4 Simulation Toolkit How to learn more?
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
Setting up Cygwin Computer Organization I 1 May 2010 ©2010 McQuain Cygwin: getting the setup tool Free, almost complete UNIX environment emulation.
HW/SW Co-design Lecture 2: Lab Environment Setup Course material designed by Professor Yarsun Hsu, EE Dept, NTHU RA: Yi-Chiun Fang, EE Dept, NTHU.
CPSC 453 Tutorial Xin Liu Sep 23, OpenGL An open standard of rendering pipeline A software interface to graphics hardware A useful set of APIs for.
7 June 2005 Visualization & GGE Demo J. Perl 1 HepRep/WIRED DAWN OpenGL Geant4 Visualization & GGE Demo Joseph Perl, SLAC.
Support required for running application software projects in the SL/CO/AP section M.Vanden Eynden October 2000 * A description of the software development.
National Center for Supercomputing ApplicationsNational Computational Science Grid Packaging Technology Technical Talk University of Wisconsin Condor/GPT.
Makefiles. Multiple Source Files (1) u Obviously, large programs are not going to be contained within single files. u C provides several techniques to.
J.P. Wellisch, CERN/EP/SFT SCRAM Information on SCRAM J.P. Wellisch, C. Williams, S. Ashby.
Nachos Overview Lecturer: Hao-Hua Chu TA: Chun-Po Wang (Artoo) Date: 2008/09/18 Material Provided by Yuan-Hao Chang, Yung-Feng Lu.
More Unix Naomi Altman. Directories Directory = folder mkdir - makes a new directory rmdir - removes an empty directory cd mydirectory - moves you into.
Geant4 examples Sébastien Incerti On behalf of the Geant4 collaboration with special thanks to Luciano Pandola, INFN.
Makoto Asai (SLAC) Getting Started MGP: added class diagram of basic user application.
Open project in Microsoft Visual Studio → build program in “Release” mode.
Lab 9 Department of Computer Science and Information Engineering National Taiwan University Lab9 - Debugging I 2014/11/4/ 28 1.
BESIII Offline Software Development Environment Ma qiumei * Development environment * Configuration & management tool * Software development.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
2: Operating Systems Networking for Home & Small Business.
Geant4 Training 2003 A Short Course on Geant4 Simulation Toolkit How to learn more? The full set of lecture notes of this Geant4.
김민수 Cortex-M4 Processor - Getting Started with the GNU Compiler Collection(gcc)
 CSC 215 : Procedural Programming with C C Compilers.
CLHEP Infrastructure Improvements CHEP 2004 Lynn Garren, FNAL and Andreas Pfeiffer, CERN.
Use of CMT in LHCb CMT Workshop, LAL (Orsay) 28 th February - 1 st March 2002 P. Mato / CERN.
An Introduction to Ant. What is Ant? How do you use it? Why would you want to?
Modularization of Geant4 Dynamic loading of modules Configurable build using CMake Pere Mato Witek Pokorski
Starting with an example PART I Set your environment up and get a Geant4 example.
Multiple file project management & Makefile
Cygwin: getting the setup tool
CSC 215 : Procedural Programming with C
The full set of lecture notes of this Geant4 Course is available at
A Short Course on Geant4 Simulation Toolkit How to learn more?
User Interface
Cmake Primer.
Software Installation
A Short Course on Geant4 Simulation Toolkit How to learn more?
A Short Course on Geant4 Simulation Toolkit How to learn more?
Software Installation, release 4.0
Presentation transcript:

Software Installation The full set of lecture notes of this Geant4 Course is available at

Outline Supported platforms & compilers External software packages and tools Working area and installation area Toolkit installation –Configuring the environment manually –Using the Configure installation script Building an executable Integrating Geant4 in a software framework

Supported platforms & compilers UNIX systems –SUN-SunOS v.5.8, CC v.5.4 (WS6)  G4SYSTEM: SUN-CC Linux systems –CERN Scientific Linux 3.3  G4SYSTEM: Linux-g++ Windows systems –Win/XP & Cygwin32, MSVC NET  G4SYSTEM: WIN32-VC7 Other systems, not (yet) officially supported –MacOS 10.3 and g++ gcc 3.3  G4SYSTEM: Darwin-g++ Check current Geant4 supported platforms in No user support by Geant4 Collaboration for other platforms: use at your own risk!

Required software A UNIX shell and related basic UNIX commands C++ compiler –Optional: FORTRAN compiler (f77/g77) is required for building utility tools in the g3tog4 module GNU Make –GNU g++ is required for dependencies pre-processing CLHEP library Geant4 toolkit

External software packages - 1 Visualization/GUI tools (optional): X Windows OpenGL or MesaGL VRML browser DAWN (PostScript renderer) –DAVID (Geometry debugging tool based on DAWN) Open Inventor or HEP Inventor –requires OpenGL/MesaGL Open Scientist –interactive environment, including GUI Momo –Tcl/Tk or Java-based GUI environment –GGE, GPE graphics editors WIRED –Uses the HepRep built-in graphics driver

External software packages - 2 Module and Tools for analysis (optional) AIDA (Abstract Interfaces for Data Analysis) –JAS (Java Analysis Studio) –PI (Physicist Interfaces for AIDA Interactive Analysis) –Open Scientist (Interactive Analysis Environment) –Any other analysis tool compliant with AIDA interfaces …

Working area & Installation area Why two different areas ? –To allow centralized installation of the Geant4 kernel libraries and related sources in a multi-user environment –To decouple user-developed code and applications from the kernel –To allow an easy integration of the Geant4 software in an existing software framework –To allow multiple installations of the kernel and user code Working and Installation area can be the same Are controlled by two environment variables –G4WORKDIR and G4INSTALL

Configuring the environment: the manual approach for installation Identify the system used for the installation –G4SYSTEM Identify the area of installation (i.e. path where the source code and the kernel libraries should be based) –G4INSTALL –Optionally, specify a different path for the kernel libraries and/or the temporary object files  G4LIB, G4TMP –Optionally, specify a different path for exporting of source header files  G4INCLUDE

Configuring the environment: the manual approach for installation Specify the path of installation for CLHEP –CLHEP_BASE_DIR  should point to the area where include/ and lib/ are placed from the standard CLHEP installation procedure Paths can be customised: CLHEP_INCLUDE_DIR, CLHEP_LIB_DIR  the CLHEP library name is assumed to be: [lib]CLHEP[.a/.lib] A different name can be explicitly specified: CLHEP_LIB Specify the graphics/UI drivers to install –G4VIS_BUILD_ _DRIVER –G4UI_BUILD_ _DRIVER –the path to the related graphics/(G)UI packages, if required

Configuring the environment: the manual approach for installation Specify installation specific attributes –G4DEBUG  To build libraries including debug symbolic information  By default, optimised mode is selected –G4LIB_BUILD_SHARED  To specify if to build kernel libraries as shared libraries  Static archive libraries are built by default  Adding also G4LIB_BUILD_STATIC will build both –G4_NO_VERBOSE  For better performance, verbosity code can be left out by defining this flag (i.e. no verbosity will be possible). The default is with verbosity on

Starting the installation Choose the installation layout –Maximum granularity of libraries (granular libraries)  Ideal for developers and local installations  Link list of libraries automatically generated  Triggered with “ gmake ” from $G4INSTALL/source –Category compound libraries (global libraries)  Convenient for a centralized multi-users installation  Default for shared libraries builds  Triggered with “ gmake global ” from $G4INSTALL/source Installing source header files –G4INCLUDE defines the installation path –Triggered by “ gmake includes ” from $G4INSTALL/source Installing the hadronic physics-lists –Triggered by “ gmake ” from $G4INSTALL/hadronic_lists/lists

Configuring the environment to use Geant4 Specify the working area: G4WORKDIR –If not, Geant4 assumes G4INSTALL as the working area –Products of application builds are placed in $G4WORKDIR  Binaries in $G4WORKDIR/bin  Object files and other temporary files in $G4WORKDIR/tmp Specify which graphics drivers, (G)UI drivers you want to use from the current installation –G4VIS_USE_ –G4UI_USE_ Specify the path where to retrieve data-files for specific simulations

Using the Configure script for installation & configuration The Configure script guides through the whole installation process described so far by defining the proper environment and triggering the actual installation./Configure –install Once the environment has been configured, Configure stores the current installation setup –The installation setup will become the default for the current installation, in case future changes to the installation are necessary –Configure does NOT install the hadronic physics-lists. These need to be installed manually ! Once the installation is complete, Configure can be used to generate shell scripts for configuring the user environment to build a Geant4 application according to the current installation./Configure –Generates env[.sh/.csh] scripts in the user’s current directory –It assumes the user specifies a working directory ( G4WORKDIR )  In case not, the user’s home directory is set as default G4WORKDIR path

Building an executable Configure the environment according to the current installation –Source or integrate the shell script generated by Configure Define the working area ( G4WORKDIR ) Build any of the available examples: cp –r $G4INSTALL/examples $G4WORKDIR cd $G4WORKDIR/examples/novice/N01 gmake

Building DLLs on Windows DLLs (Dynamic Link Libraries) on Windows can be built for global compound libraries only –Using the Configure script  Follow the steps till explicitly asked for –Or manually with “ make dll ” from $G4INSTALL/source Build any of the available examples by setting G4LIB_USE_DLL first in your environment Add to PATH the path where libraries are installed and run your application, e.g.: export PATH=$PATH:/usr/local/geant4/lib/$G4SYSTEM

Integrating Geant4 in a framework Consider Geant4 as an external software package Well define its area of installation –For global libraries and source header files Choose an installation setup which best matches the project needs Adopt or integrate a configuration script reflecting the current installation