QNX Technical Articles
QNX® Momentics® 6.3.0 SH4 Critical Patch Installation Note
Date of this edition: November 02, 2005
Target OS: QNX® Neutrino® 6.3.0
Host OS: Microsoft Windows XP SP1 or 2000 SP4; Sun Solaris 7/8; QNX® Neutrino® 6.3.0; Linux (Red Hat 8/9)
The SH4 Critical Patches address various problems concerning the SH4 architecture, as described in the earlier critical alert. You'll need this patch if you're using an SH4 target system:
- Renesas Big Sur/Amanda (SH7751R)
- Renesas Biscayne (SH7760)
- Renesas SystemH (SH7751R)
The SH4 Critical Patches are included in QNX Momentics 6.3.0 Service Pack 1. We highly recommend that you install SP1 instead of these patches. |
The set of patches consists of:
- SH4 Critical Patch
- source and binary patches for the Big Sur/Amanda and Biscayne BSPs to address some related board-specific issues
- source and binary patches for the Flash Filesystem & Embedding TDK.
For more details, see the release notes for each patch. There are no board-specific fixes for the SystemH BSP.
You must install the software in this order:
|
Contents...
This note includes:
Installation procedure
If you installed 6.3.0 on a Windows machine that already had 6.2.1,
and you selected "No" when
prompted about upgrading the environment variables, you won't be able to
install this patch.
(Ref# 23094)
Workaround: Do the following:
|
Here's how to install each SH4 Critical Patch:
- Download the archive to your host environment.
- Determine the base directory of your QNX Momentics installation
by opening a command shell and using the
qconfig command.
For example:
$ qconfig QNX Installations Installation Name: QNX Momentics 6.3.0 Version: 6.3.0 Base Directory: /usr/qnx630/ QNX_HOST: /usr/qnx630/host/qnx6/x86/ QNX_TARGET: /usr/qnx630/target/qnx6/
The base directory in this example is /usr/qnx630/, but it could be different on your machine, depending on your host and where you installed QNX Momentics.
- Extract the archive you downloaded into the base directory:
- Method 1: Command-line based
- For all hosts, you can open a command shell and use the following
commands (replacing base_dir with the path found in step 2, and
archive with the full path to the downloaded archive):
cd base_dir
tar -x -v -f archive - Method 2: GUI based
- Use any GUI-based application that supports the TAR
format (e.g. WinZIP under Windows). Ensure that the destination directory
is your base directory.
If you use WinZIP, choose Options-->Configuration, switch to the Miscellaneous tab in this dialog, and turn off the TAR file smart CR/LF conversion option. If this option is turned on, and you extract the archive, then your shiplist file will contain ^M characters.
- Next, you must incorporate the patch into your host system; see below.
Applying the patch
The patch is stored in a directory (or folder) that's separate from your existing development system:
base_dir/patches/630-number/
Some files of interest within the 630-number directory are:
- version
- Includes the patch number and the build information.
- manifest
- Contains the checksums of the files shipped in the patch (as generated by the cksum utility).
- shiplist
- A list of the files included in the patch.
The remaining files in the directory comprise the new software delivered in the patch. As this is a patch to the QNX Momentics Development Suite, this software is contained in two directories:
- host
- Fixes related to the development tools and environment that runs on the host.
- target
- Fixes related to components that would be built into QNX Neutrino target systems.
To apply the patch, you need to copy the new files on top of the old ones in your development system.
Since this is a destructive procedure, we recommend that you create a backup of the affected files. |
Making a backup
To create a backup on any of our hosts:
- (Windows only) From the command.com prompt, run ksh:
ksh
- Go to the base directory:
cd base_dir
- Make a backup copy of the files that will be overwritten:
pax -w < patches/630-0027/shiplist > patches/630-0027-backup.tar
You may ignore the expected error messages that result from pax's attempt to back up nonexistent libgcc.a files for host operating systems other than the one you're using.
- Make a backup of default links (POSIX-type hosts) and default versions of files (copied by the mklinks script on Windows hosts). A small number of additional files are also backed up
at this stage as a precaution for some systems that had a prior patch applied:
pax -w < patches/630-0027/shiplist2 > patches/630-0027-backup2.tar
- (Windows only) Exit ksh:
exit
Copying the files - Windows hosts
To apply the patch on a Windows system from the command prompt (remember to switch back to command.com from ksh):
- Switch to the drive specified in your base directory (e.g. C:).
- Go to the base directory (remember to replace / characters in the base directory with \):
cd base_dir
- Install the host updates:
xcopy patches\630-0027\host host /s /i /v /y
- Install the target updates:
xcopy patches\630-0027\target target /s /i /v /y
Now run the mklinks script to copy default files to the necessary locations. Use forward slashes (/) in the pathname you supply to bash:
cd target\qnx6\shle bash base_dir/patches/630-0027/mklinks
Copying the files - Neutrino, Linux, and Solaris hosts
To apply the patch on a Neutrino, Linux, or Solaris system:
- Go to the patch directory:
cd base_dir/patches/630-0027
- Install the host updates:
grep '^host' shiplist | pax -rw base_dir
- Install the target updates:
grep '^target' shiplist | pax -rw base_dir
Technical support
If you have any questions, comments, or problems with a QNX product, please contact Technical Support. For more information, see the How to Get Help chapter of the Welcome to QNX Momentics guide or visit our website, www.qnx.com.