OpenSTA - Open System Testing Architecture OpenSTA Build Instructions
How to get from source to OpenSTA installable
Thanks to SourceForge
 

This information is out of date

These instructions are for the latest version of OpenSTA, please make sure you have this before proceeding.

Contents


Build Platforms

Operating System

  • Microsoft Windows NT 4.0 (service pack 5 and above)
  • Microsoft Windows 2000

Compiler

Note:
The OpenSTA 1.0 series requires patches to the STL of MSVC++ v6. You can obtain these patches from:
http://dinkumware.com/vc_fixes.html.
OpenSTA 1.1 series does not require these patches as it does not use the Microsoft STL. The other 3rd party packages should be built against the same STL as is used by OpenSTA, the STLPort.

3rd Party Libraries

OpenSTA builds with, and links against, a number of third party components. The OpenSTA build process expects to find these components in the ext\ directory of its source distribution root.

If you have success building the OpenSTA sources with 3rd party library versions other than those noted below, please make this information available on the developer mailing list at:
- <opensta-devel@lists.sourceforge.net>.
We will gladly include your information in future versions of this document. Information about subscribing to this developer mailing list can be found at:
- http://lists.sourceforge.net/mailman/listinfo/opensta-devel .

STLport only for 1.1 series

STLport, tested with 4.0

Get the STLport source archive from: http://www.stlport.org/download.html
Unpack this archive into ext\ and rename its root directory to STLport\. Build following the instructions in the package. Following this make sure that VC++ is configured to use these libraries in place of the Microsoft STL. Instructions are povided with the STLport.

omniORB

omniORB3, tested with 3.0.4

Get the source tar.gz archive from: ftp://ftp.uk.research.att.com/pub/omniORB/omniORB3/omniORB_304.tar.gz
Unpack this archive into ext\ and rename its root directory to omniORB\.
Build following the instructions included in the README.win32 file.

ucd-snmp

ucd-snmp, tested with 4.2

Get the source tar.gz archive from: http://download.sf.net/net-snmp/
Unpack this archive into ext\ and rename its root directory to ucd-snmp\.
Build the libsnmp_dll project using the Visual C++ workspace in the win32\ directory.

Note:
ucd-snmp has recently changed its home site and name. It will be known as net-snmp in the future, the above instructions are still applicable using the version indicated.

CodeMax

CodeMax, tested with 2.1

Get the components archive from: http://groups.yahoo.com/group/codemax/
Unpack this archive into the provided directory named ext\Codemax\. The default package contains the library and headers in the top directory, OpenSTA will be able find them here.
If you perform your own build of Codemax then the OpenSTA build should locate the newly created libraries in preference over the distributed ones.

Note:
The debug build of the CodeMax library is not provided in this archive so will need to be manually built.

Microsoft HTMLHelp API

HTMLHelp, tested with 1.1

The required htmlhelp.h and htmlhelp.lib come as part of Microsoft HTML Workshop, which can be installed off your VC++ 6 CD, alternatively an updated version can be freely downloaded from: http://msdn.microsoft.com/library/tools/htmlhelp/

For the OpenSTA build process to find this header and library file you must either make sure that Visual Studio knows of the lib\ and include\ directories where HTML Help Workshop was installed, using its Tools>Options>Directories dialog. Alternatively you can make copies of the HTML Help installation directories lib\ and include\ under ext\HTMLHelp\.

Bison/Flex Wizard for MSDEV

Bison/Flex Wizard for MSDEV

Get the installation archive from: http://www.fg-soup.com/products.html
Install this by running the Setup.exe in the archive.


Building the Source

The OpenSTA sources are organized into five distinct packages which can be found in the following directories:

  • src\Architecture\ - OpenSTA basic core + libraries
  • src\BaseUI\ - Commander user interface framework
  • src\HTTP\ - HTTP related components
  • src\NTPerf\ - NT Performance related components
  • src\SNMP\ - SNMP related components

Each of these component directories contains an MSDEV .dsw workspace file. With these files opened in MSDEV you should be able to view and build all the projects that make up the OpenSTA environment.

There are two methods of building OpenSTA:

  1. In the OpenSTA 1.1 series the top level directory contains an MSDEV .dsw workspace file which will build all the packages within OpenSTA.
  2. For the OpenSTA 1.0 series and still available in the 1.1 series you can build the individual packages using the MSDEV .dsw files located in each of the component directories.

When building the packages individually, the Architecture package must be built first, this is best built via Build>Batch Build, selecting all the "Win32 Release" components and then hitting the Build button. Once this Architecture package has been successfully built, the BaseUI package should be built followed by the other packages, all built in the same manner as the Architecture.

Addendum:
If any changes are made to the .lex or .par in the HTMLParser project of OpenSTA, then the headers need to be regenerated. The parser generator tool that generates these headers is a CYRANO home grown tool called Pheonix. CYRANO have created a zip file containing the sources and executable for this this tool, it can downloaded from: ftp://ftp.opensta.org/source/phoenix.zip.

Once the build finishes you will need to check all of the build messages in the log window for errors, as the build process will not stop if there are any.


Building an Installation

Once you have successfully built all the sources with no errors you are ready to construct an installable.

To produce an installable, Microsoft Visual Studio Installer is required. If you do not have this it is available to VC++ 6.0 users as a free download from: http://msdn.microsoft.com/vstudio/downloads/tools/vsi11/download.asp
For more information see the FAQ

In the 1.1 series of OpenSTA the installation has been modularized placing the architectural components in an installation merge module. This .msm file is built by opening the file src\Installer\Architecture.wip in the Visual Studio Installer. Set the Build>Build Configuration to be Release and then Build>Build.

To produce the OpenSTA .msi installable file, open up the file src\Installer\OpenSTA.wip in the Visual Studio Installer. Set the Build>Build Configuration to be Release and then Build>Build. If all goes well you will have created an .msi file in the src\Distribution\Distrib\DISK_1\ directory.

Addendum:
If you have installed your Visual Installer in any other place than the default, then there can be problems locating the .msm (Microsoft Merge Modules) that are part of the Installation. These will have to be manually located before the the installation can be created.

Please note that the MSI file produced during the build of OpenSTA will:

  • Always place the OpenSTA menu items in the current user program section.
  • Not prompt for the required reboot of the machine at the end of the installation.

At present we are unable to provide these features using Visual Installer. The following instructions allow you to manually edit the created MSI to cause:

  • The OpenSTA menu to appear on the start menu of all users instead of the current user.
  • Include a reboot at the end of the installation.

Obtaining an MSI Editor

In order to edit the MSI database you will need a product such as ORCA. ORCA is available as part of the Windows Platform SDK from: http://msdn.microsoft.com/developer/sdk/wininst.asp.
The tool is available as part of the Windows Installer samples, tools and documentation download.

Editing the MSI FILE

  1. Open MSI file with ORCA
  2. Select the InstallExecuteSequence table from the left pane.
  3. Add a row to this table (Ctrl+R)
    • Set Action to ScheduleReboot.
    • Leave Condition is left blank.
    • Set Sequence to 6500.
  4. Select Property table
  5. Add a row to this table (Ctrl+R)
    • Set Property to ALLUSERS.
    • Set Value to 1.
  6. Save and Exit.

If you experience any problems with this build process then please share these with others who have also built the package on the developer mailing list at:
- <opensta-devel@lists.sourceforge.net>. It is very likely that a quick solution will be found. Subscribe to this list at:
- http://lists.sourceforge.net/mailman/admin/opensta-devel .