A new release of GNV is available for both OpenVMS Alpha and
Integrity Servers. GNV version 1.6-2.
This kit is intended to be used with OpenVMS Alpha and Integrity
FT8.2. On Alpha, it also
works with OpenVMS V7.3-2. It has not been tested with older
versions of OpenVMS.
This release of GNV should be installed on an ODS-5 disk. It
has not been tested with ODS-2. While it may work with ODS-2,
installation
problems will likely arise. If your system disk is
not ODS-5, it may be installed to an alternate ODS-5 disk.
An ODS-2 system disk may be converted to ODS-5 by booting an
alternate system disk, or by booting the OpenVMS installation CD.
Mount the designated system disk privately (i.e. not /SYSTEM or
/CLUSTER), and type:
$ SET VOLUME/STRUCTURE=5 disk
Then reboot the designated system disk.
Read the System Manager's Manual, Volume 1: Essentials, for
information on using ODS-5 disks. See Chapter 10, USING FILES
AND DIRECTORIES.
Changes since GNV A-1.5-3
- New Unix tools:
- du
- printenv
- env
- which
- GNU tar
- Bug Fixes:
- BASH - Fix to "if" statement after asynchronous
command. Resolved problem where many CONFIGURE scripts generate
bad CONFIG.H files
- Redirection of DCL commands on Integrity problem fixed
- Definition of SYS$POSIX_ROOT changed to expected format
- Pipe to cut -f bug fixed
Known Problems:
Certain forms of pipe operations are
known to have problems. For example:
bash$ (cat t.txt) | less
This command works fine for a small enough t.txt. If the file is
larger, the command hangs.
One workaround to this and certain other pipe hangs is to use the
Run-Time Library's feature to increase the buffer size of the mailboxes
used to implement pipes, as in the following example:
$ DEFINE DECC$PIPE_BUFFER_SIZE 65000
Do not use a value much larger than 65000. For example, 65535 does not
work.
For more information, refer to the discussion of the
DECC$PIPE_BUFFER_SIZE feature in the Introduction Chapter of the HP C
Run-Time Library Reference Manual for OpenVMS Systems.
This allows the command to work for moderately large files. However,
sufficiently large files will still hang.
Another workaround to the hang is to use a temporary file as in the
following example. Of course, this requires editing the script file.
bash$ (cat t.txt) > s.txt; less s.txt; rm s.txt;
The real problem is that bash should execute both the cat and the less
child processes asynchronously. However, it does not currently do
this. Instead, the less command does not get processed until the cat
has completed. The output of the cat command is buffered in the pipe.
If the pipe is not large enough to hold the entire output, then cat
waits for the less function to read, but less does not run until the
cat function completes. The result is a hang.
HP is attempting to resolve this problem in a future release of GNV.
- bash Command Line Editing
There are numerous problems with the
bash History File and Command-Line Editing.
HP hopes to resolve these in some future release of GNV.
- $! shell variable returns a bad process id
$! is supposed to return the process id
of the most recently executed background job. Currently, it instead
returns a job number, which is not useful for most purposes.
HP hopes to resolve this problem in a future release of GNV.