Versions
Rhapsody
When Rhapsody version 7.1 or higher is used, depending on the profile
CGCompatibilityPre71C.sbs or higher by IBM Rational used or not, Rhapsody may
generate C code which is not compatible with earlier versions of
generated code.
There are two major differences in generated C code:
- a call to the function RiCOXF_pre71Settings()
- two function pointers to callback functions generated by Rhapsody in the RiCReactive structure.
These changes add a backward compitability for "delayed destroy" for
reactive objects, but the OO RTX does not support a
different method of destroying objects. However, to circumvent problems
in compatibility of the Frameworks and Rhapsody 7.1+ generated C code,
the following changes have been implemented in the Frameworks:
- the compiler constant WST_RIC_VERSION
must be used when you are using Rhapsody 7.1 and you are not using the
compatibility profile by IBM Rational. This constant is set via the
property CPPCompileSwitches. WST_RIC_VERSION
uses the Rhapsody build number to define the Rhapsody version used:
686414 for Rhapsody 6.2, 749034 for Rhapsody 7.0, 820118 for
Rhapsody 7.1 and so on.
- depending on this constant - when it is defined and its value is 820118 (for Rhapsody 7.1) or higher:
- the prototype of the function RiCOXF_pre71Settings() is available in RiCOxf.h in the directory
<your Rhapsody>\Share\WST_RXF_V5\<your product>\Source
- a dummy implementation of the function RiCOXF_pre71Settings() is available in RiCOxf.c in the same directory.
Note that Rhapsody generates a call to RiCOXF_pre71Settings() when you are using a Executable type as Component type.
- the structure RiCReactive in RiCReactive.h is extended with the prototypes cleanupMethod and freeMethod of the callback functions generated by Rhapsody. You will find RiCReactive.h in <your Rhapsody>\Share\WST_RXF_V5\<your product>\Source
The compiler constant WST_RIC_VERSION is set via RxfConstants.h; it is
extremely important that when using Framework libraries and
Rhapsody generated code, this constant has the same value:
- verify the constant WST_RIC_VERSION in your CreateRXFLibrary
project.
- verify the property file <your Rhapsody>\Share\WST_RXF_V5\<your product>\Config\Properties\WST_RXF_V5.prp for the macro InstalledRpyVer.
Toolchain
Your toolchain effects the integration of the Deployer and your IDE as well as the implementation of your compiler interface bridge and even your target interface bridge implementation. Please verify the implementations to see if these match your IDE and toolchain.
RTOS
If you are using an OO RTX including RTOS extention, you must verify the exact version of your RTOS and the supported version of your product. The interface implementation
may rely on a configuration file or an include file of your RTOS and
its implementation may depend on the exact version of your RTOS.
Copyright (c) Willert
Software Tools GmbH. All rights reserved.