Home · Support · Download · Hardware Designs · Projects · Pubs

TinyOS FAQ
Join/Search Mailing Lists
Documentation

TinyOS Site

WWW

 I want to search the TinyOS Mail Archives

1.1.0 Installshield Setup Details

To see what each tinyos-1.x RPM does, see the RPM spec file found under tinyos-1.x/tools/release. The nesc spec file is found in the nesc cvs tree under tools/release. The spec files are also accessible online at http://webs.cs.berkeley.edu/tos/dist-1.1.0/tinyos/source/SPECS/.

FEATURES
The tinyos 1.1.0 InstallShield setup offers the following software packages.

- TinyOS 1.1.0
- TinyOS Tools 1.1.0
- NesC 1.1.0
- Cygwin (package trees from approximately 04/16/2003_
- Support Tools
- Java 1.4 JDK & Java COMM 2.0
- Graphviz
- AVR Tools
     - avr-binutils 2.13.2.1
     - avr-libc 20030512cvs
     - avr-gcc 3.3-tinyos
     - avarice 2.0.20030825cvs
     - avr-insight cvs-pre6.0-tinyos

USER CHOICES
The user can choose between COMPLETE and CUSTOM install. A custom install allows
the user to choose the features that are installed. A COMPLETE install includes
all of the above features.

Installation granularity is at the individual package. For example, the user
can choose to install avr-binutils and not avarice. Modules are chosen from a
module tree dialog.

The user chooses the destination directory. Any chosen features are installed under that
destination directory. Hereafter the destination directory is referred to as INSTALLDIR.

JDK
If the user choose to install the JDK module, a dialog asking if the user has read
Sun's terms and conditions appears. If the user selects 'No'then setup is ended. If the
user selects 'Yes' then setup continues.

If the user has not chosen to install a JDK, two checks are performed:

(1) Find a 1.4 JDK: the check passes if the registry key
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Development Kit\1.4\JavaHome
exists, the check passes. If not a message box appears that says that
the setup couldn't find a 1.4 JDK and advises installation of one if
one truly doesn't exist.

(2) Find Java COMM: the check passes if the file
JAVA_HOME\lib\javax.comm.properties is found. If the file is not found,
a message box appears that says setup couldn't find a Java COMM
installation and advises installation of one if one truly doesn't
exist. JAVA_HOME is set after the previous check.

Cygwin
If the user chooses to install cygwin, the 1.1.0 cygwin package
tree is copied over to a directory called INSTALLDIR/cygwin-installationfiles.
setup.exe is called to perform automatic installation of those files in
INSTALLDIR/cygwin.

If the user hasn't chosen a cygwin installation, the setup locates one
by looking for HKEY_LOCAL_MACHINE\Software\Cygnus Solutions\cygwin\mounts v2\/
(the '/' mount point). If one doesn't exist, the installation aborts. The
setup needs an existing cygwin in order to install any of the features which
include RPMs.

Because we must know the location of a previously existing cygwin in order to
place module RPMs in the correct place, the key name "native" is retrieved and
the value (which is usually something like c:\cygwin) assigned to the variable
representing the known cygwin location.

IS INSTALLATION
Once the user okays their destination directory and setup type in a
dialog window, the IS setup copies all the necessary files over and makes
the required registry and environment variable modifications. Note that most
of the real installation work is done after the IS INSTALLATION by either
RPMs or the cygwin setup program.

After the files listed below are copied, the cygwin setup program is executed.
After the cygwin setup program finishes, any features that have RPMs
associated with them are installed from an execed cygwin shell.  Logfiles are
kept in /home/Administrator/<RPM-name>.log

TinyOS
- Files:
  - TinyOS RPM
  - a custom .bashrc is placed in [INSTALLDIR]\cygwin\home\Administrator
- Registry: None
- Environment Variables:
  - TOSROOT is set to INSTALLDIR\tinyos-1.x
 

TinyOS Tools
- Files:
  - TinyOS Tools RPM
- Registry: None
- Environment Variables: None

NesC
- Files:
  - NesC RPM
- Registry: None
- Environment Variables: None

Cygwin
- Files:
  - The tinyos-1.1.0 cygwin packages are put in [INSTALLDIR]\cygwin-installfiles
- Registry: None
- Environment Variables: None

Java
- Files:
  - A 1.4.1_02 installation tree is copied to [INSTALLDIR]\jdk_1.4\j2sdk1.4.1_02.
- Registry:
  - The HKEY_LOCAL_MACHINE/Software/JavaSoft tree is copied. Values are prefixed
   with [INSTALLDIR]
- Environment Variables: None

Graphviz
- Files:
  - A Graphviz installation tree is copied to [INSTALLDIR]\ATT\Graphviz
  - PATH: the Graphviz bin directory is appended

AVR Tools
- Files:
  - Each tool has an RPM
  - Registry: None
  - Environment Variables: None
 


Home | Download | Support | Publications | Hardware Designs | Related Work | Internal

This project is part of Berkeley WEBS: Wireless Embedded Systems