Desktop Installation

From STRIDE Wiki
Revision as of 23:51, 6 May 2010 by Ivailop (talk | contribs) (Windows)
Jump to: navigation, search

To leverage the STRIDE Sandbox you need to install the STRIDE Framework package on your PC.

Installation Packages

Files are installed by unzipping the provided package to your PC. Packages are available targeting the following operating systems (your version number may be different than that shown):

Windows XP
STRIDE_framework-windows_4.1.0x.zip
Linux
STRIDE_framework-linux_4.1.0x.tgz

Please see the appropriate installation instructions below.

Linux

Prerequisites

GCC

If you intend to build off-target sample/test applications you would need the GNU Compiler Collection (included by default in almost all Linux distros).

perl

If you intend to use STRIDE Script modules for expectation testing in script, you will need a recent version of perl installed. As of this writing, we support versions 5.8.9 and 5.10.x (5.12 support will be available shortly). Our STRIDE perl libraries have a few dependencies on standard packages that might not be installed on your system:

If your perl is installed in a system directory (/usr/bin/perl, for instance), you will need root access to install shared modules. The simplest method for installing packages is via the CPAN shell. sudo perl -MCPAN -eshell will start the shell in interactive mode. Once in the shell, install PACKAGE_NAME will search for and install the latest stable version of PACKAGE_NAME.

The STRIDE perl packages also need to load your system's libperl.so (shared object file) at runtime. Depending on your system, this file should be loadable from a perl CORE directory or from one of the shared system directories. If you do not have this shared library on your system, you might need to install a libperl-dev or perl-devel package in order to get it.

Unpacking

The following installation example assumes the the installation package is located in your home directory and that the directory ~/stride exists. You can choose to install to a different location (all instructions below assume you are installing into ~/stride). The version numbers in your archive file name may be different than those shown in the example.

cd ~/stride
tar -zxvf ../STRIDE_framework-linux_4.1.0x.tgz

Once unzipped, files will have been installed under the ~/stride directory.

Verify Environment Variables

Updated PATH

As a final step, you will need to update your PATH environment variable to include ~/stride/bin.

If you use the bash shell, enter the following at a command prompt, or to automatically set at each login, add to your .bashrc:

export PATH=$PATH:~/stride/bin

For other shells, and more information, please see the following articles:

Create/Update STRIDE_DIR

Verify that the STRIDE_DIR environment variable exists and is set to the root installation directory (~/stride). If this environment variable does not yet exist, you should automatically set at each login, add to your .bashrc.

Create/Update PERL5LIB

In order to run the host script modules in perl, you must ensure that the following two directories are part of your PERL5LIB environment variable:

  • ~/stride/lib/perl
  • ~/stride/lib/perl/5.X.Y -- where X matches your minor version of perl. The sub-minor version (Y) does not typically need to match, but we include it so that we know which exact perl source version our files were built against. If your version of perl does not match any of the versions we provide, please consider upgrading.

If this environment variable does not yet exist, you should automatically set at each login, add to your .bashrc. Unique directory paths should be separated by a colon when creating this environment variable.

Windows

Prerequisites

The current versions of the STRIDE Framework have only been tested under Windows XP (SP 2 and greater). If you need to run the framework on Windows Vista or Windows 7, please contact us.

Visual Studio

If you intend to build off-target sample/test applications you would need Visual Studio 2003 or later. If you don't already have Visual Studio, the free Visual C++ Express can be used. Download here.

perl

If you intend to use STRIDE Script modules for expectation testing in script, you will need a recent version of perl installed. As of this writing, we support versions 5.8.9 and 5.10.x (5.12 support will be available shortly). We recommend the standard distributions from ActiveState.

The following additional (non-standard) perl packages are also required for full functionality of STRIDE tests in perl:

If you are using an ActiveState distribution, you can easily install these packages using the ppm tool. Simple command-line installation typically just requires typing ppm install PACKAGENAME where PACKAGENAME is the name of a package to install.

Unpacking

The following installation example assumes the the installation package is located in your root directory and that the directory \stride exists. You can choose to install to a different location (all instructions below assume you are installing into \stride). The version numbers in your archive file name may be different than those shown in the example.

The example uses the open source 7-Zip utility to unzip the archive.

cd \stride
"\Program Files\7-Zip\7z" x ..\STRIDE_framework-windows_4.1.0x.zip

Once unzipped, files will have been installed under the \stride directory.

Executing batch file

Once the framework package has been unpacked, you must execute the framework_install.bat file in the bin. Double click this file to launch it. It should finish within 30 seconds and prompt you to close the window.

Verify Environment Variables

Updated PATH

You must verify that your PATH environment variable includes \stride\bin. If it does not include this path, you must add it.

The PATH is a system environment variable. For instructions on modifying it, please see http://support.microsoft.com/kb/310519.

Create/Update STRIDE_DIR

Verify that the STRIDE_DIR environment variable exists and is set to the root installation directory (\stride). If this environment variable does not yet exist, you should create it as a system environment variable.

Create/Update PERL5LIB

You must ensure that the following two directories are part of your PERL5LIB environment variable:

  • \stride\lib\perl
  • \stride\lib\perl\5.X.Y (where X matches your minor version of perl. The sub-minor version (Y) does not typically need to match, but we include to let you know which source version our files were built against. If your version of perl does not match any of the versions we provide, please consider upgrading.

If this environment variable does not yet exist, you can create it as a system or user environment variable, although we recommend the former. Unique directory paths should be separated by a semicolon when creating this environment variable.

Directories and Files

It's not necessary to understand the workings of the STRIDE framework to perform sandbox evaluation or training. The SDK is set up with appropriate options and settings to enable "out of the box" functionality. A quick orientation to the sandbox directories and files is shown below.

If you are interested in the details, consult the articles Linux SDK and Windows SDK.

bin

This directory contains the STRIDE Build Tools and the STRIDE Runner.

The build tools are invoked early on in the target software build process to generate special STRIDE artifacts that are used in subsequent build steps and later when running tests against the target. In a sandbox installation, these files are needed on the host computer since this is where we are building the target application. In a production off-target environment, these files are needed only on the computer that performs the target software build.

The STRIDE Runner is the program you use to run tests from the host.

Samples

The Samples directory contains a number of sub-directories, each containing the source for a sample test.

SDK

This directory contains the sub-directories GRS, Runtime, and SLAP, which contain source code that comprises the STRIDE Runtime. These sources are built into the STRIDE Runtime library as a dependency of the testapp target. (See src directory below.)

In addition, there is a directory named either Linux or Windows, depending on your host operating system.

SDK\Windows( or SDK/Linux )

This directory (Windows or Linux contains the following directories:

  • bin (Windows only)
Contains GNU make program files (GNU make is already present on Linux systems)
  • sample_src
This directory is originally empty. The sandbox is set up so that any files in this directory are included in the TestApp build.
  • settings
This directory contains the file stride.s2scompile. This file, used by the s2scompile program, specifies target CPU characteristics (endian-ness, data sizes and alignments). Since the SDK targets an x86 processor, its characteristics are reflected in the file. On Windows, this directory also contains two rules files for use in building target apps with Visual Studio.
  • src
This directory contains the Makefile used to produce the sandbox TestApp as well as the TestApp sources.
  • out
This directory (and several sub-directories) is created as part of the make process. All of the make targets are written to this directory and its sub-directories.

License Activation

The Stride Runner executable requires a valid license to run. The first time you execute stride (and any other time a valid license is not found), you will be prompted to accept the Stride Framework License Agreement. If you accept the agreement, you will then be prompted to enter a license activation code.

At this point, enter the activation code supplied by S2 Technologies to perform Internet activation and download of your license. You must be connected to the Internet for this to succeed.

Once you have a valid license on your computer, the Internet connection is no longer necessary (except for results upload to STRIDE Test Space).

NOTE: Be sure that the clock on your host machine is set correctly. The license server will not issue a license if your clock is set to a date earlier that the current date. (We have seen this occur when using a virtual machine as a host, since the VM's clock is not synchronized with the host machine's clock.)

NOTE: If you access the Internet via an HTTP proxy please follow these simple instructions to resolve any connectivity issues.