Chapter 2

Prerequisites

Ensure that you have the required hardware and software before proceeding with the Rose for UNIX/Linux installation.

Recommendation: Before installing Rose, you might find it helpful to get a copy of the system management guide from your platform vendor.


Requirements Checklist

The following sections list the recommended configuration to successfully install and use Rose.

You do not need to log in as root to verify that most of these requirements are satisfied. If all are satisfied, you can proceed with the installation. If any are not satisfied, however, you probably will need help from your system administrator. Changing most of these items requires knowledge of your network and workstation configurations as well as root permissions.

Recommendation: Check all the items listed, noting any requirements that are not satisfied. Give the list of needed changes to your system administrator, wait for the changes to be made, and then proceed with the installation.

Hardware Requirements and Configurations

Table 1 contains the hardware requirements for installation and use of this product. Note that the recommended amount of memory is only the suggested minimum amount. Additional memory may improve performance. Your memory requirements will also be larger if you are constructing larger models.

Table 1 Hardware Requirements
Hardware Item
Recommendation
For
Memory

64 + (32 * N) MB of RAM (where N is the number of users running Rose simultaneously on a given workstation)

Use

Server

A midrange UNIX/Linux server or client UNIX/Linux workstation (Sun servers: Sparc Station 20 and above)

Use

Client

An AIX, Solaris, HP-UX, SGI IRIX, or Tru64 Unix workstation running the required operating system level as described in the following table under operating system software requirements. The UNIX/Linux workstation must be capable of displaying X Windows
or
a PC running eXceed version 6.1or higher to display X windows
or
for Rose on Linux x86, a PC running with Xfree and Xi Graphics X servers on Linux. It is recommended to use more than 256 colors in your graphics card/monitor configuration.

Use

Disk space

270 MB for loading release + 1-3 MB for each Rose model

Installation, Use

CD-ROM

Mounted as a UNIX/Linux file system

Installation

Display

Color display

Use

Your hardware can be configured in various ways. For example:

This chapter describes the requirements for a single-user desktop workstation that you will use either stand-alone or with a file server that provides no support other than file service. The desktop workstation will run all Rose processes.

The alternative is to run all Rose processes on a remote compute server, redirecting the display to your local workstation or X-terminal. If the compute server is shared by several Rose users, it will need to be more powerful than a desktop workstation that supports only one Rose user.

Software Requirements

Table 2 contains the software requirements for installation and use of this product. Note that this is also only a suggested amount of swap space. Your requirements may be larger if you expect to construct very large models. If all of your models are small, you may need less than the amount shown here.

Table 2 Software Requirements
Software Item
Requirement
For
Operating system1

AIX 4.3.2
Solaris 2.5.1, 2.6, 7, 8 (kernel revision January 2000 and later)
HP-UX2 10.20 (ACE release3), 11.00, and 11.11
SGI IRIX 6.5.5
Tru64 Unix 4.0f
Linux x86 Red Hat 6.2 and 7.0

Use

C++ Compiler #include files

AIX CSet ++ 3.6.6
Solaris SC 5.0
HP-UX 10.20:
HP aC++ B3910B A.01.21
HP aC++ B3910B A.01.19.02 Language Support Library

HP-UX 11.00:

Analyzer

JDK, JFC, and J2EE

JDK 1.1.6
JFC 1.1 (swing classes for 1.1)
JDK 1.2 (based on 1.2.1)
J2SE 1.2 (based on 1.2.2)
J2SE 1.3
J2EE 1.2
or any of the major Java IDEs



Java

Rose J supports the following Java IDE's. Use the JDK appropriate to your IDE.4
- IBM VisualAge for Java Professional Edition (Linux only)
- IBM VisualAge for Java Enterprise Edition (Linux only)
- Forte for Java Internet Edition 2.0 (Solaris Linux only)
- Forte for Java Community Edition 2.0 (Solaris Linux only)
- JBuilder 4.0 Professional Edition (Solaris Linux only)
- JBuilder 4.0 Foundation Edition (Solaris Linux only)



Port map daemon

Must be running

Installation, Use

TCP/IP

Must be running

Installation, Use

Host names

Must be configured

Installation, Use

Page/Swap space

150 + (50 * N) MB

Use

X Window System

Native X11R5 or X11R6 (except HP 10.20)
X news on Sun with OpenWindows 3

PC X server eXceed version 6.1 or higher
In addition, when running Rose for Linux x86, XFree and Xi Graphics X servers on Linux

Use

Window Manager

MWM (Motif Window Manager) version 1.2
vuewm on HP-UX
4dwm on SGI IRIX
dtwm (CDE (Desk Top) version 1.0)
olwm (Open Look Window Manager) on SUN is supported, but icons of Rose for UNIX/Linux may not integrate well with other icons on the screen
In addition to those listed above, Rose for Linux x86 will run with the GNOME desktop environment with the Enlightenment window manager and the KDE desktop environment with the lcwm window manager.

The following Window Managers are not supported:

olvwm (olwm with virtual screens) Rose for UNIX/Linux will not remain on original virtual desktop, but rather will follow when other desktops selected.
twm (shipped with X11)
tvtwm (twm with virtual screens)
fwm
gwm
fvwm

Use

1 All platforms may not be available at this time. Contact technical support for availability information.

2 HP9000 Series 700.

3 Rose requires that an ACE release be installed to run properly on HP-UX 10.20. To determine if an ACE release is installed, run /usr/sbin/swlist | grep ACE.

4 See the Rose_IDE_Link_README file in the release for Rose UNIX/Linux IDE Link Integration setup information, prior to using the IDE Link integration.


Adjusting UNIX/Linux System Limits if Resources are Used Up

It is unlikely you will need to reconfigure your system limits to use Rose for UNIX/Linux. The following information should only be utilized if your system resources appear to be used up when running Rose. The following is based on MainWin requirements for Sun Solaris. If you require system information for other supported architectures, contact Rational Technical Support.

Solaris System Limit Setup

The UNIX/Linux operating system maintains a configurable list of system resource limits. The ones relevant to this discussion are listed in the following table.

Table 3 System Resource Parameters
Parameter
Description
pt_cnt

Number of ptys allowed on the system

rlim_fd_cur

Maximum number of open file descriptors allowed per process

semmnu

Maximum number of semaphore undo structures allowed system-wide

shmmax

Maximum size of a shared memory segment

shmmin

Minimum size of a shared memory segment

shmmni

Maximum number of shared memory segments system-wide

shmseg

Maximum number of shared memory segments to which a single process can attach

An application cannot consume more system resources than allowed for by the system limits. In most cases, when an application tries to consume more system resources than allowed, no system messages are generated to notify the user of the resource allocation failure.

In particular, there may be cases where Rose fails to execute correctly due to an attempt to use more system resources than allowed. For example, consider the application that opens many files. After the application has already opened the maximum number of files allowed, its attempt to open one more file will not succeed. The application may crash or may stop functioning properly.

The solution to the problem is to modify the system resource limits to suit the applications needs.

The rest of this section discusses some of the system resource limits that an application may exceed, and describes how to modify the appropriate system settings to enable the application to execute correctly.


Note:
The following procedures are intended for system administrators; root password privilege is required to change UNIX/Linux system parameters.


Note:
On Solaris, the system limits are set by modifying the file /etc/system. Changes in this file only take effect after the system is rebooted. Since the changes to /etc/system may cause a failure to reboot, back up the file before using it. It is possible to reboot the system from the boot prompt with the command b -as to choose which system configuration files to use during boot. For more information regarding the Solaris /etc/system file format, see the man pages at:

Maximum Number of Semaphore Undo Structures Allowed System-wide

Rose allocates a semaphore undo structure for each executing application. If a rehosted application fails to run concurrently with other instances of the application (or alongside any other rehosted application), it may be because this limit has been reached.

The number of semaphore undo structures permitted on the system should be greater than or equal to the maximum number of concurrent Rose processes that will ever run simultaneously. If you do not have any idea, start with 100.

Setting Maximum Number of Semaphore Undo Structures Allowed System-wide

Add the following line to the /etc/system file:

set semsys:seminfo_semmnu=### 

Where ### is the maximum number of semaphore undo structures allowed on the system.

Maximum Number of Open File Descriptors Per Process

The default maximum number of open file descriptors allowed per process on Solaris is 64. If the application fails to open a file, it may be because it reached this limit.

To set maximum number of open file descriptors allowed per process, add the following line to the /etc/system file:

set rlim_fd_cur=### 

Where ### is the maximum number of open file descriptors allowed per process.

Maximum Number of ptys Allowed

If at any time you suspect that your application ran out of available ptys (virtual ttys), increase the maximum number of ptys allowed.

To set maximum number of ptys allowed, add the following line to the /etc/system file:

set pt_ctn=### 

Where ### is the maximum number of ptys allowed on the system.

Maximum and Minimum Size of Shared Memory Segments

Rose uses shared memory. It may be that the shared memory settings are incorrect. Ensure that the maximum and minimum shared memory sizes are set as explained below.

Set the maximum size of a shared segment to at least 1,048,576 bytes (1 MB) or more.

To set maximum size of a shared memory segment to 1 megabyte, add the following line to the /etc/system file:

set semsys:seminfo_shmmax=1048576

Set the minimum size of a shared memory segment to be less than the maximum size, preferably 1 byte.

To set the minimum size of a shared memory segment, add the following line to the /etc/system file:

set semsys:seminfo_shmmin=1

Maximum Number of Shared Memory Segments

Rose (through the use of MainWin) uses shared memory to hold internal information about threads, events, and other Windows resources. An application that is very demanding of such resources (for example, it is heavily multithreaded, or it creates and maintains a large number of events) may exhaust the available shared memory allocated to it by the operating system, resulting in application crash or unexpected behavior.

There are two system resource limits that should be set to help avoid the problem:

In order to set shmmni and shmseg we need to estimate the number of shared memory segments required by Rose at peak time, as described in the following procedure. Note that the result of this procedure is an estimate, and should be used with a safety factor.

Estimating the Number of Shared Memory Segments Required at Peak Time

  1. Have as few as possible processes running on your system.

  2. Run an instance of your Rose application. Activate all features of your application to make sure it is using the maximum number of resources.

  3. Run the ipcs command to determine how many shared memory segments are allocated by Rose. When running only one instance of your application, it is most likely that only two shared memory segments will be allocated. The following is an example of ipcs output when two shared memory segments are allocated:

  4. Run another, concurrent instance of Rose. Make sure it is using the maximum number of resources. Repeat the ipcs command. If you get the same results as above, you know that both processes fit into the same shared memory segment. Continue adding concurrent instances of Rose and using the maximum number of resources, until you see an increase in the number of allocated shared memory segments. An example of ipcs output when Rose allocates more shared memory segments follows:

  5. Note the number of concurrent instances of your application, and subtract 1. For convenience, call this

  6. Estimate the maximum number of shared memory segments system-wide (shmmni) as follows:

If shmmni is fractional, round it up to the next highest integer.


Note:
It is recommended, as a safety precaution, that you set the actual value of shmmni to be somewhat higher than the result of the calculation.

This concludes the procedure; you are now ready to set both the shmmni and shmseg limits.

To Set the Maximum Number of Shared Memory Segments System-wide

Add the following line to the /etc/system file:

set shmsys:shminfo_shmmni=#### 

Where #### is the maximum number of shared memory segments system-wide that was calculated earlier in step 6.

You should set the value of shmseg - the maximum number of shared memory segments that a single process can attach to - to be equal to shmmni - the maximum number of shared memory segments system wide.

To Set the Maximum Number of Shared Memory Segments that One Process Can Attach To

Add the following line to the /etc/system file:

set shmsys:shinfo_shmseg=#### 

Where #### is the value of shmmni, as calculated earlier in step 6.


Operating
System Run Time and/or Patch Requirements

The requirements below are in relation to the following platforms (operating system versions):

Please contact Rational Technical Support if you encounter any compatibility difficulties after installing a patch which supersedes the following patches.

HP-UX 10.20 & 11.00 Patch Requirements and Descriptions

The following table describes patch requirements for HP-UX 10.20 and 11.00.

Run Time Patches
Description
Reason for Patch
Operating System Versions & Notes
PHCO_19434

S700_800 10.20 csh(1) cumulative patch

Fixes crash of csh exit of MainWin

HP-UX 10.20 (ACE)

PHSS_21461

S700_800 10.20 Xserver cumulative patch

Fixes Xserver crash with multiple rectangle

HP-UX 10.20 (ACE)

PHSS_17872

HP aC++ run time libraries (aCC A.01.21)

Runtime for compiler A.01.21

HP-UX 10.20 (ACE)

PHSS_19739

S700_800 10.20 HP DCE 9000 1.5 cumulative patch

Problem with threads

HP-UX 10.20 (ACE)

PHSS_17225

S700-800 10X dld.sl(5) cumulative patch

Run time requirement

HP-UX 10.20 (ACE)

PHSS_173271

X/Motif 2.1 Dev Kit Mar99 Periodic Patch

Run time requirement

HP-UX 11.00

PHSS_19866

ld(1) and linker tools cumulative patch

Resolve dld.sl error when utilizing CORBA & Java Operation Specification Window:
/usr/lib/dld.sl: Unresolved symbol: (libot.sl (unknown))

HP-UX 11.00

PHSS_16587

s700_800 11.X
HP aC++ (aCC A.03.13) run time libraries

Run time requirement

HP-UX 11.00

1 See the following Note


Note:
Rose for UNIX/Linux requires HP-UX OS Patch PHSS_17327 (X/Motif 2.1 Dev Kit Mar99 Periodic Patch). This Patch requires PHSS_17326 (X/Motif2.1 Runtime Mar99 Periodic Patch). PHSS_17326 has been superseded by HP-UX OS Patch PHSS_23823.

It is important to use PHSS_23823 as Rose for UNIX/Linux will not start (display) if an earlier version of this patch is installed (i.e. PHSS_21493).

If it is necessary to have a Motif Xlib runtime patch prior to PHSS_23823 and you encounter this issue, refer to the following instructions to workaround this problem:

  1. Make sure your Rose process is no longer running. (Use ps to determine if the process is running, and "kill -TERM [pid]" if it is necessary to kill the process.)

  2. As the owner of these files,

  3. cp libX11.3 rational_dir/releases/rose.I.J.K/hppa_hpux/hp11/lib/.

  4. chmod 555 rational_dir/releases/rose.I.J.K/hppa_hpux/hp11/lib/libX11.3.

  5. Run rose_cleanup.

  6. Run rose.

The HP-UX patches are available at:

Solaris Patch Requirements and Descriptions


Note:
Some patches are required on the SERVER (the computer which users login to, to run Rose for UNIX/Linux) and the CLIENT (the computer which is used to display Rose for UNIX/Linux), and some are required only on the CLIENT. In some cases, the SERVER and CLIENT are the same computer, but often several users login to one SERVER (to run the application) and have their own displays which serve as their CLIENT. The following SUN Solaris patch recommendations are specific to SUN Solaris SERVERS and CLIENTS. Each patch mentioned is defined as either a "SERVER and CLIENT" patch, or as a "CLIENT" patch.

SERVER and CLIENT Run Time Patches
Description
Reason for Patch
Operating System Version
103566-46

Xsun patch

To fix defects in XinitThreads and _XflushInt, i.e., defect fixes for multi-threaded applications under X.

Solaris 2.5.1

103627-11

Linker patch

Fixes problems in dlclose( )

Solaris 2.5.1

103640-29

Kernel nisopaccess & libthread patch

Kernel fix for dlclose( )

Solaris 2.5.1

106529-04

Shared library patch for C++

Shared library fix

Solaris 2.5.1

105181-16

Kernel update patch

Fixes kernel thread problems

Solaris 2.6

105591-06

Shared library patch for C++

Shared library fix

Solaris 2.6

105633-32

Xsun patch

See "Reason for Patch" under patch 103566-46

Solaris 2.6

106040-12

X input and output method patch

Fixes input/output problem

Solaris 2.6

106327-05

Shared library patch for C++

Shared library fix

Solaris 7

108376-03

Xsun patch

See "Reason for Patch" under patch 103566-46

Solaris 7

108434-01

Shared library patch for C++

Shared library fix

Solaris 8

CLIENT (Display) Patches
Description
Reason for Patch
Operating System Version & Graphic Card
(see information describing how to detect graphics cards in the following
Notes section)
105789-07

VIS/XIL Graphics Patch

Provides the imaging and video foundation for Solaris

Supplemental for Creator or Elite graphics card on Solaris 2.5.1

105361-10

VIS/XIL Graphics Patch

Provides the imaging and video foundation for Solaris

Supplemental for Creator or Elite graphics card on Solaris 2.6

106147-03

VIS/XIL Graphics Patch

Provides the imaging and video foundation for Solaris

For Creator or Elite graphics card on Solaris 7

103792-25

M64 Graphics Patch

Required for PGX (M64 Graphics card) PCI-based Utra 5, 10, and 60:

n To fix gui hanging problems

n To fix paint problems (black/white regions appear in menus, dialog boxes, toolbars, etc.)


For PGX (M64 Graphics card) on Solaris 2.5.1

105362-20

M64 Graphics Patch

See "Reason for Patch" under patch 103792-25

For PGX (M64 Graphics card) on Solaris 2.6

106146-10

M64 Graphics Patch

See "Reason for Patch" under patch 103792-25

For PGX (M64 Graphics card) on Solaris 7

105790-19

FFB Graphics Patch

Supplemental patch for VIS/XIL graphics patch:

n To fix gui hanging problems

n To fix paint problems (black/white regions appear in menus, dialog boxes, toolbars, etc.)


For Creator Graphics Card on Solaris 2.5.1

105360-28

FFB Graphics Patch

See "Reason for Patch" under patch 105790-19

For Creator Graphics Card on Solaris 2.6

106145-12

FFB Graphics Patch

See "Reason for Patch" under patch 105790-19

For Creator Graphics Card on Solaris 7

105791-25

AFB Graphics Patch

Supplemental patch for VIS/XIL graphics patch for Elite 3D frame buffer:

n To fix gui hanging problems

n To fix paint problems (black/white regions appear in menus, dialog boxes, toolbars, etc.)


For Elite3D Graphics Card on Solaris 2.5.1

105363-24

AFB Graphics Patch

See "Reason for Patch" under patch 105791-25

For Elite3D Graphics Card Solaris 2.6

106144-12

AFB Graphics Patch

See "Reason for Patch" under patch 105791-25

For Elite3D Graphics Card Solaris 7

103793-01

TCX Graphics Patch

To fix GUI hanging, and to fix paint problems (black/white regions appear in menus, dialog boxes, toolbars, etc.)

For TCX Graphics Card on Solaris 2.5.1

106391-01

TCX Graphics Patch

To fix GUI hanging, and to fix paint problems (black/white regions appear in menus, dialog boxes, toolbars, etc.)

For TCX Graphics Card on Solaris 2.6

107851-01

PGX32 2.1 Graphics Patch

Recommended for GFX graphics card

For GFX Graphics Card on Solaris 2.5.1, 2.6, and 7 if "VERSION" line from pkginfo -l TSIgfxOW indicates 2.1, otherwise refer to following patches

107714-01

PGX32 Graphics Patch

Recommended for GFX graphics card

For GFX Graphics card on Solaris 2.5.1 if 107851-01 does not apply

107715-04

PGX32 Graphics Patch

Recommended for GFX graphics card

For GFX Graphics card on Solaris 2.6 if 107851-01 does not apply

107716-04

PGX32 Graphics Patch

Recommended for GFX graphics card

For GFX Graphics card on Solaris 7 if 107851-03 does not apply

105492-02

cgsix driver patch

For issue related to GX frame buffer

For cgsix Graphics Card on Solaris 2.6

The Solaris patches are available at:

The Sun Solaris patches may not be available publicly.

The following may be necessary in order to obtain some of the Solaris patches listed above:

Notes

How to detect a graphics card on a Sun Solaris computer:

Errors Encountered if Correct Sun Solaris Runtime Not Installed

A user will encounter the following error if the appropriate Sun Solaris runtime patches are not installed:

ld.so.1: exe_name: fatal: libCrun.so.1: open failed: No such file or 
directory

Displaying on Ultrabook, Using PGX Graphics Card

A CDE crash may occur when displaying Rose for UNIX/Linux on a Ultrabook using a PGX Graphics Card, if SUN Solaris patch 105362-26 is installed.

If using a PGX Graphics Card, we recommend that SUN Solaris patch 105362-20 be installed as this is the latest version tested and determined to be compatible with this release.

If you encounter the CDE crash, uninstall patch 105362-26 and if possible install "105362-20". If SUN Solaris patch "105362-20" is not installed, the following may occur:

If you uninstall patch 105362-26 and encounter any of the issues described above, contact Rational Technical Support if patch 105362-20 is not available.

Support for the PGX32 Add-on Board

If your client computer has the PGX32 add-on board (based on the Permedia 2 chip), you need to install the drivers and patches for this card. You cannot see the device in the /dev/fbs directory unless the drivers are installed.

Contact Rational Technical Support if you require information in relation to the SUN Solaris drivers or patches for the PGX32 add-on board.

Tru64 Unix Run Time Requirement and Description

Rose for UNIX/Linux requires the C++ run time library (libcxx) compatible with Compaq C++ for Tru64 Unix, Version 6.2. Rose for UNIX/Linux, therefore requires a newer version of the C++ run time library (libcxx) than is provided by Tru64 Unix versions prior to 5.1.

Either the subset "CXXREDIST620", or the C++ compiler kit (version 6.2) must be installed to satisfy Rose for UNIX/Linux run time requirements.

Errors Encountered If Correct Run Time Not Installed

A user will encounter unresolved symbols (see example listing below), if the appropriate Compaq C++ for Tru64 Unix run time is not installed on the Tru64 Unix server, running Rose for UNIX/Linux:

30494:/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe:
/sbin/loader: Error: Unresolved symbol in
/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe: __nw__XUlPv

30494:/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe:
/sbin/loader: Error: Unresolved symbol in
/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe: __dl__XPvPv

30494:/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe:
/sbin/loader: Error: Unresolved symbol in
/rational/releases/rose.I.J.K/alpha_osf1/bin/rose_exe: __cxx_call_static_dtors

Rose for UNIX/Linux will automatically check to determine if the correct run time library is installed on your Tru64 Unix computer:

Necessary Run Time (6.2 libcxx) Provided In Rose for UNIX/Linux

We have included the necessary Compaq C++ for Tru64 Unix run time in case you encounter the type of errors shown previously when attempting to run this release.

The file CXXREDIST620V01.tar is located under:

rational_dir/releases/rose.I.J.K/install/patches/alpha_osf1

How To Determine If Tru64 Unix Computer Includes the Correct Run Time To Run Rose for UNIX/Linux

Run:

/usr/sbin/setld -i | grep CXX | grep installed

If either subset CXXBASEnnn or CXXREDISTnnn is installed, the correct run time is available to run Rose for UNIX/Linux. (There would be no need to install the Compaq C++ for Tru64 Unix run time library provided in this release.)

How To Install the Run Time Library (libcxx) Provided In This Release

Refer to the instructions below, if it is necessary to install the Compaq C++ for Tru64 Unix 6.2 run time library provided in this release.

  1. Login as superuser.

  2. Copy the file CXXREDIST620V01.tar to /usr/lib/cmplrs/cxx.

  3. cd /usr/lib/cmplrs/cxx

  4. Untar the file by entering the following:

  5. Install the run time library by entering the following command and selecting the subset displayed:


Automated Requirements Checking

Note that a script named check_reqs included in the rose.I.J.K/install directory is loaded from the Rose release. This script can assist you in the verification of required configurations and the minimum recommended resource settings. A copy of check_reqs, named check_rose_reqs, is placed in the rational_dir/releases/rose.I.J.K/bin directory.

While you are installing Rose, the installation scripts automatically use check_reqs -install to verify TCP/IP, the portmap daemon, and host names. These are requirements for the workstation(s) on which you install Rose.

The check_reqs and check_rose_reqs scripts are run by the installation and rose scripts respectively to verify TCP/IP, the portmap daemon, host names, memory, page or swap space, pseudo terminals, resource limits, the X Window System, and the Motif window manager. These are requirements and recommendations for the workstation(s) on which you run Rose. The check_rose_reqs script is also run the first time that Rose is started to automatically notify you if operating system patches are necessary.

The check_reqs script is not able to check:


      

Rational Support

techpubs@rational.com
Copyright © 2001, Rational Software Corporation. All rights reserved.