Changes between Version 6 and Version 7 of VincentFAQ


Ignore:
Timestamp:
May 6, 2005, 4:00:09 PM (21 years ago)
Author:
garonne
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • VincentFAQ

    v6 v7  
    1111
    1212[http://www.cmtsite.org/ CMT](__C__onfiguration __M__anagement __T__ool) is a configuration management environment, based on some management conventions and comprises several shell-based utilities. It is an attempt to formalize software production and especially configuration management around a package-oriented principle.
     13
     14The environment provides conventions (for naming packages, files, directories and for addressing them) and tools for automating as much as possible the implementation of these conventions. It permits to describe the configuration requirements and automatically deduce from the description the effective set of configuration parameters needed to operate the packages (typically for building them or using them).
     15
     16== What is a package ? ==
     17
     18The notion of packages represents hereafter a set of software components (that may be applications, libraries, tools etc...) that are to be used for producing a system or a framework. In such an environment, several persons are assumed to participate in the development and the components themselves are either independent or related to each other.
    1319
    1420== How to install CMT ? ==
     
    3238== I've never used CMT before. Is there a CMT tutorial? ==
    3339
    34 There are numerous tutorials avalaible here [http://www.cmtsite.org/documents.html Documents].
     40There are numerous tutorials avalaible here:
    3541
    36 * [wiki:VincentTrial How do i begin playing with CMT(by Vincent Garonne)?]
     42 *  [http://www.cmtsite.org/documents.html Documents]
     43
     44 * [http://atlas.web.cern.ch/Atlas/GROUPS/SOFTWARE/OO/sit/Policy/ Atlas and CMT]
     45
     46 * [wiki:VincentTrial How do i begin playing with CMT ?]
    3747
    3848== How do I submit bug reports for CMT ? ==
     
    4050To report a bug, please use the relevant service from the Trac project.
    4151
    42 * Bugs: [http://trac.lal.in2p3.fr/CMT/newticket New Ticket]
     52 * Bugs: [http://trac.lal.in2p3.fr/CMT/newticket New Ticket]
     53
     54
     55= CMT in the real world =
     56 
     57==  How stable is CMT ? ==
     58
     59Very stable (of course :) ).
     60
     61== How many people are using Python ? ==
     62
     63CMT is an academic project aimed at providing support to the software developments in the context of large physics experiments ([http://atlas.web.cern.ch atlas],[[BR]][http://lhcb.web.cern.ch/lhcb/ lhcb], ...).
     64
     65Although it is currently used by Physics experiments, it is strongly required to stay experiment neutral, and this requirements is fully endorsed in its internal design (eg by ensuring that all possible customizations can always be performed without modifications to the kernel).
     66
     67This kind of requirements also implies that portability or modularity issues (including environment independance) are assigned a quite high priority.
     68
     69== What are the supported platforms ? ==
     70
     71CMT has been ported and tested on a wide range of machines/operating systems, including:
     72
     73 * DEC-Unix V4.0
     74 * HP-UX-10 (several types of platforms)
     75 * AIX-4
     76 * Solaris
     77 * IRIX
     78 * Several variants of LynxOS
     79 * All variants of Linux (RedHat, Debian, SuSe, ScientificLinux, ...)
     80 * Windows 95/98/NT/Windows2000 in various environments:
     81    * CYGWIN_NT-5.1 environment
     82    * nmake based environment
     83    * MSDev/VisualC 6 environment
     84    * MSDev/VisualC 7 environment
     85 * Darwin (Mac OS X)
     86
     87== CMT's design ==
     88
     89= What are the architecture of the environment ? =
     90This environment is based on the fact that one of its packages (named CMT ) provides the basic
     91management tools. CMT , as a package, has very little specificities and as such itself obeys the
     92general conventions.
     93Then the complete software base is organized in terms of projects (or sub-projects ), containing
     94consistently managed package sets. Projects are localized either globally or individually:
     95globally using the environment variable CMTPROJECTPATH that describes all locations
     96where CMT projects can be found individually using the environment variable CMTPATH that describe all package areas where packages can be found Packages are localized respectively to the projects they belong to.
     97It should be noted that the choice of a location for installing CMT itself is totally independent of
     98the locations where projects are installed and managed.
     99
     100CMT is operated through one main user interface : the cmt command, which operates the CMT
     101conventions and which provides a set of services for :
     102 * creating a new package. This operation will create or check the local package directory tree
     103and generate several minimal scripts (see the description of the create command),
     104 * describing or monitoring :
     105    ** the relationships between the package and other packages
     106    ** the configuration features either specified in the current package, or imported from
     107       related (used ) ones. (symbols, patterns, fragments)
     108    ** the constituents of the package in terms of libraries, executables, or generated documents.
     109 * automatically generating the reconstruction scripts (makefiles ) from this description.
     110 * recursively acting upon the hierarchy of used packages.
     111
     112Several other utilities are also provided for some specific activities (such as the automatic
     113production of shared libraries, C prototypes, management of interactions between CVS and CMT
     114itself, the management of a similar architecture for Windows or OS9 , setting up protections for
     115packages (through locks) etc...).
     116
     117= User FAQ =
    43118
    44119== How to create a package ? ==