URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [trunk/] [ecos-2.0/] [doc/] [html/] [user-guide/] [managing-package-repository.html] - Rev 1765
Compare with Previous | Blame | View Log
<!-- Copyright (C) 2003 Red Hat, Inc. --> <!-- This material may be distributed only subject to the terms --> <!-- and conditions set forth in the Open Publication License, v1.0 --> <!-- or later (the latest version is presently available at --> <!-- http://www.opencontent.org/openpub/). --> <!-- Distribution of the work or derivative of the work in any --> <!-- standard (paper) book form is prohibited unless prior --> <!-- permission is obtained from the copyright holder. --> <HTML ><HEAD ><TITLE >Managing the Package Repository</TITLE ><meta name="MSSmartTagsPreventParsing" content="TRUE"> <META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ "><LINK REL="HOME" TITLE="eCos User Guide" HREF="ecos-user-guide.html"><LINK REL="UP" TITLE="Configuration and the Package Repository" HREF="configuration-and-the-package-repository.html"><LINK REL="PREVIOUS" TITLE="Modifying the Memory Layout" HREF="modifying-the-memory-layout.html"><LINK REL="NEXT" TITLE="Package Structure" HREF="package-structure.html"></HEAD ><BODY CLASS="CHAPTER" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >eCos User Guide</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="modifying-the-memory-layout.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="package-structure.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="CHAPTER" ><H1 ><A NAME="MANAGING-PACKAGE-REPOSITORY">Chapter 29. Managing the Package Repository</H1 ><DIV CLASS="TOC" ><DL ><DT ><B >Table of Contents</B ></DT ><DT ><A HREF="managing-package-repository.html#PACKAGE-INSTALLATION" >Package Installation</A ></DT ><DT ><A HREF="package-structure.html" >Package Structure</A ></DT ></DL ></DIV ><P >A source distribution of <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > consists of a number of packages, such as the kernel, the C library, and the µITRON subsystems. These are individually versioned in the tree structure of the source code, to support distribution on a per-package basis and to support third party packages whose versioning systems might be different. The <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Package Administration Tool</SPAN > is used to manage the installation and removal of packages from a variety of sources with potentially multiple versions.</P ><P >The presence of the version information in the source tree structure might be a hindrance to the use of a separate source control system such as <SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >CVS</I ></SPAN > or <SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >SourceSafe</I ></SPAN >. To work in this way, you can rename all the version components to some common name (such as “current”) thus unifying the structure of source trees from distinct <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > releases.</P ><P >The <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > build system will treat any such name as just another version of the package(s), and support building in exactly the same way. However, performing this rename invalidates any existing build trees that referred to the versioned source tree, so do the rename first, before any other work, and do a complete rebuild afterwards.</P ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="PACKAGE-INSTALLATION">Package Installation</H1 ><P >Package installation and removal is performed using the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Package Administration Tool</SPAN >. This tool is a Tcl script named <B CLASS="COMMAND" >ecosadmin.tcl</B > which allows the user to add new <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > packages and new versions of existing packages to an <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > repository. Such packages must be distributed as a single file in the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > package distribution format. Unwanted packages may also be removed from the repository using this tool. A graphical version of the tool is provided as part of the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Configuration Tool</SPAN >.</P ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN3071">Using the Administration Tool</H2 ><P >The graphical version of the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Package Administration Tool</SPAN >, provided as part of the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Configuration Tool</SPAN >, provides functions equivalent to the command-line version for those who prefer a Windows-based interface.</P ><P >It may be invoked in one of two ways:</P ><P ></P ><UL ><LI ><P >from the <SPAN CLASS="GUIMENU" >start menu</SPAN > (by default <SPAN CLASS="GUIMENUITEM" >Start->Programs-> eCos->Package Administration Tool</SPAN >)</P ></LI ><LI ><P >from the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > <SPAN CLASS="APPLICATION" >Configuration Tool</SPAN > via the <SPAN CLASS="GUIMENUITEM" >Tools->Administration</SPAN > menu item</P ></LI ></UL ><P ><P ><IMG SRC="pix/admin.png"></P ></P ><P >The main window of the tool displays the packages which are currently installed in the form of a tree. The installed versions of each package may be examined by expanding the tree.</P ><P >Packages may be added to the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > repository by clicking on the <SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Add</I ></SPAN > button. The <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > package distribution file to be added is then selected via a <SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >File Open</I ></SPAN > dialog box.</P ><P >Packages may be removed by selecting a package in the tree and then clicking on the <SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Remove</I ></SPAN > button. If a package node is selected, all versions of the selected package will be removed. If a package version node is selected, only the selected version of the package will be removed.</P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN3099">Using the command line</H2 ><P >The <B CLASS="COMMAND" >ecosadmin.tcl</B > script is located in the base of the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > repository. Use a command of the following form under versions of UNIX:</P ><TABLE BORDER="5" BGCOLOR="#E0E0F0" WIDTH="70%" ><TR ><TD ><PRE CLASS="SCREEN" >$ tclsh ecosadmin.tcl <command></PRE ></TD ></TR ></TABLE ><P >Under Windows, a command of the following form may be used at the Cygwin command line prompt:</P ><TABLE BORDER="5" BGCOLOR="#E0E0F0" WIDTH="70%" ><TR ><TD ><PRE CLASS="SCREEN" >$ cygtclsh80 ecosadmin.tcl <command></PRE ></TD ></TR ></TABLE ><P >The following commands are available:</P ><P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><B CLASS="COMMAND" >add <file></B ></DT ><DD ><P >Adds the packages contained with the specified package distribution file to the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > repository and updates the package database accordingly. By convention, <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > package distribution files are given the <TT CLASS="FILENAME" >.epk</TT > suffix.</P ></DD ><DT ><B CLASS="COMMAND" >remove <package> [ --version=<version> ]</B ></DT ><DD ><P >Removes the specified package from the <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > repository and updates the package database accordingly. Where the optional version qualifier is used, only the specified version of the package is removed.</P ></DD ><DT ><B CLASS="COMMAND" >list</B ></DT ><DD ><P >Produces a list of the packages which are currently installed and their versions. The available templates and hardware targets are also listed.</P ></DD ></DL ></DIV ><P >Note that is is possible to remove critical packages such as the common HAL package using this tool. Users should take care to avoid such errors since core <SPAN CLASS="PRODUCTNAME" >eCos</SPAN > packages may only be re-installed in the context of a complete re-installation of <SPAN CLASS="PRODUCTNAME" >eCos</SPAN >.</P ></DIV ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="modifying-the-memory-layout.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ecos-user-guide.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="package-structure.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Modifying the Memory Layout</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="configuration-and-the-package-repository.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Package Structure</TD ></TR ></TABLE ></DIV ></BODY ></HTML >