The OpenVMS Frequently Asked Questions (FAQ)

Previous Contents Index

subscribe samba-vms Your Full Name 

Also see:

  • The Perl language is available for OpenVMS, see Section 13.9 for details.
  • XML is available for OpenVMS.
    Source code of an XML Parser is available from Oracle.
    Also see:
    An XML parser is available as part of OpenVMS V7.3 and later.
  • Python kit, and resource, and documentation sites include:
  • GTK+ (The GIMP GUI Tookit) for OpenVMS:
  • The OpenVMS Porting Library now available, and is intended to permit easier porting of C and C++ applications from UNIX systems to OpenVMS:
    GTK is also available.
  • Mlucas (specialized FFT):
  • Tools to monitor the terminals and the activity of other OpenVMS users (in addition to existing auditing capabilities in OpenVMS) are available. Peek and Spy (Networking Dynamics) and Contrl (Raxco) are two of the commercial packages, while the freeware Supervisor package is available on OpenVMS VAX.
  • Python for OpenVMS:
    Also see the OpenVMS Freeware.
  • Various packages for OpenVMS:
  • TSM (Terminal Server Manager) is available via:
  • TCL for OpenVMS:
  • make, gmake, mmk and other build tools are available on the Freeware.
  • An OpenVMS port of the ht://Dig web search engine is available at:
  • A mySQL database client is available at:
    For additional information related to the mySQL port, please search the news:comp.os.vms newsgroup archives. A MySQL port is also available on the OpenVMS Freeware.
  • If you need to change the file modification date and are looking for a utility such as the UNIX touch tool, look at DFU on the OpenVMS Freeware (DFU SET or simular), or use an existing DCL commands such as:

    $ SET FILE/PROTECT=(current_protection_mask) [...]*.* 

  • A table listing translations between UNIX shell and OpenVMS DCL commands was posted to news:comp.os.vms by Christopher Smith some time ago. This page should be available from the google newsgroup archives.
    For information on and the status of the OpenOffice port for OpenVMS, please see:
  • The UNIX touch tool is available via various means:

    $ RENAME filename.ext;version * 

    MadGoat FILE tool (see the MadGoat archives)
  • The DFU tool (see the OpenVMS Freeware)
  • The pair:

    $ set file 'p1' /acl=(ident=[system],access=none) 
    $ set file 'p1' /acl=(ident=[system],access=none) /delete 


  • The following touch hack:

    $!   Command procedure SETDATE.COM 
    $!   Changes the DATES for an input file to a 
    $!   file named OUTFILE. 
    $assign/nolog 'p1' outfile 
    $convert/fdl=sys$input 'p1' outfile: 
    creation   01-apr-2010 
    expiration 01-Apr-2012 
    revision   01-Apr-2011 

  • The following RMS system service sequence:

    Various OpenVMS tools and utilities are available at:

    OpenVMS ports of the xmcd and MPlayer tools have also been reported as available.

    13.2 Where can I find UNIX tools for OpenVMS?

    There are OpenVMS DCL and UNIX shell command comparison tables posted at:

    The GNV package ( Section 13.2.6) and the various C library calls available in current/recent libraries are the replacement for the POSIX package.

    13.2.1 C system and library routines

    Common C system and library routines are present in the DEC C run-time library, which is available for V5.5 and later, and is shipped in V6.1 and later. DEC C is the upgrade for VAX C, DEC C and VAX C can coexist on the same system OpenVMS VAX system, and both compilers can be enabled via the "C" license PAK.

    Also see SYS$EXAMPLES:, and (if either is installed) the DECW$EXAMPLES: and TCPIP$EXAMPLES (or prior to V5.0, UCX$EXAMPLES:) areas.

    The HP C Run-Time Library documentation is now part of the OpenVMS Operating System Documentation, and separate from the HP C compiler documentation.

    Additionally, there have been large-scale increases to the capabilities and features available within recent HP C compilers. If you have not taken the opportunity to skim the current C compiler documentation, you may well be surprised with the sheer volume of new C capabilities discussed there.

    13.2.2 X Windows utilities and routines

    Various X Windows utilities are available for DECwindows. DECwindows is an implementation of the X Windows environment and libraries, and provides various libraries, and provides various desktop interfaces, including COE, Motif, and XUI.

    xwd, xev, mosaic web browser, xrdb, bmtoa and atobm, xpr, ico, etc. are available. Look in DECW$UTILS: in DECwindows Motif V1.2-3 and later. Also see DECW$EXAMPLES: for example X and C programs.

    Miscellaneous tools and examples are also available. Examples include the older DWAUTH (X Windows SYSUAF authorize-like tool) tool, various versions of grep, fgrep, yacc, vmstar, uuencode, gawk, etc. html tools, the mx SMTP mail exchange package, X windows flight simulator, the mxrn X windows news reader, the OSU HTTPD WWW server, a WWW gopher browser, Castle Wolfenstein (Wolf3D), etc. are all on the various OpenVMS Freeware distributions. (Also see the GNV package ( Section 13.2.6) for related materials, APIs, and tools.)

    13.2.3 TCP/IP Tools and Utilities for OpenVMS?

    TCP/IP Services (formerly known as UCX) contains tools such as ping, uuencode, smtp, snmp, rcp, nfs, tnfs, etc.

    OpenVMS V6.2 and later includes DCL-integrated support for various IP tools, with commands such as SET HOST/TELNET, and COPY/FTP. This interface requires the installation of an IP stack, and TCP/IP Services (UCX) V3.3 and later as well as any then-current or now-current third-party IP stack can be used. Once the IP stack is installed and configured, the DCL command qualifiers such as /FTP, /RCP, /RLOGIN, /TELNET, and /TN3270 are available on various DCL commands including DIRECTORY.

    Various C programming examples in TCPIP$EXAMPLES and (on releases prior to V5.0) in UCX$EXAMPLES:.

    13.2.4 The vi text editor

    vile, vim and elvis are all clones of the vi text editor, and all operate on OpenVMS.

    Versions of vile are available on the Freeware and at:

    vim: vi improved

    13.2.5 The Emacs Text Editor

    OpenVMS ports of versions of the Emacs text editor can be found on various OpenVMS Freeware distributions (eg: OpenVMS Freeware V7.0 has a port of Emacs 21.2), and at various web sites including:

    "Emacs isn't a text editor, it's a way of life."

    For comparisions of OpenVMS text editors and UNIX, see the following:

    13.2.6 GNV: Various GNU tools

    Information on the GNU on VMS (GNV; "GNU's Not VMS") Project, which aims to port and provide GNU software (bash, flex, bison, tar, grep, gcc emulation, etc) to OpenVMS, is available at:

    Software info:

    Software archive:

    Various GNU tools are also available on the Freeware. GCC compiler

    Yes, gcc is available for OpenVMS Alpha and OpenVMS I64.

    In addition to gcc, the HP C compiler and other development tools are part of the OpenVMS Hobbyist licensing program for non-commercial users, and these and other tools are available to commercial developers via the HP DSPP partner program. (See Section 2.15 for information on DSPP.)

    13.3 What is the status of PL/I on OpenVMS?

    Kednos now owns and supports the former DIGITAL PL/I compiler and run-time support on OpenVMS, and is the contact for product status, support and associated plans.

    As of this writing, (older) versions of the PL/I run-time library and associated supporting images remain available on OpenVMS VAX and on OpenVMS Alpha, including the DECmigrate VEST translated images run-time support on OpenVMS Alpha, though neither the PL/I shareable image nor the DECmigrate (AEST) translated image support for the PL/I run-time are available (from HP) on nor present on OpenVMS I64 systems. Newer versions of the PL/I run-time library may be (are?) available from Kednos for various OpenVMS platforms; please contact Kednos for product details and availability.

    13.4 Where can I get the Mozilla Web Browser? is an open source organization providing HTML-related tools; software that is the basis for various utilities including the Mozilla web browser and the Secure Web Browser (SWB) package.

    OpenVMS Engineering is continuously porting's web browser to OpenVMS, and OpenVMS ports of the current Mozilla baselevels and releases are available. The OpenVMS Mozilla port includes the web browser, the mail client, the Composer HTML editor, an IRC chat client, a netnews (NNTP) reader, and various other tools.

    The Mozilla web browser download and the development and release schedules for this and for other Mozilla-related tools are available at:

    The available Secure Web Browser (SWB) kit is a packaged version of the Mozilla Web Browser, and typically the SWB version number matches the underlying Mozilla version.

    A hardware configuration appropriate for Mozilla generally involves an OpenVMS Alpha system with an EV56 Alpha microprocessor, or an EV6 or more recent processor, and with 256 megabytes of system memory. The performance of Mozilla on EV5-based and earlier Alpha microprocessor systems is generally viewed as inadequate, this due to the extensive use of an Alpha instruction subset that is first available with the EV56 microprocessor generation.

    Mozilla is not available for OpenVMS VAX.

    Various versions of the Netscape Navigator web browser are based on the Mozilla code-base.

    13.5 Where can I get Java for OpenVMS?

    Java is available on and is included with OpenVMS Alpha, starting with the OpenVMS Alpha V7.2 and later releases. Java download kits are available for OpenVMS Alpha V7.1 and later releases.

    Java is not available on OpenVMS VAX. As for why: the Java language definition requires a floating point format (IEEE) that is not native to VAX, and this would require the emulation of all floating point operations within Java applications. Further, the C source code used to implement for Java itself is heavily dependent on passing IEEE floating point values around among the many internal subroutines, and adding support for VAX would entail changes to the HP C compiler for OpenVMS VAX---and specifically to the VAX VCG code generator that is used by HP C on OpenVMS VAX systems---in order to add support for passing IEEE-format floating point doubles around. Alternatively, extensive changes to the Java source code to remove the assumption that the double is an IEEE floating point value.

    There are currently no plans to make a version of Java available for OpenVMS VAX. (A prototype version of Java was created for OpenVMS VAX, and performance was found to be inadequate. At best.)

    If Java2 or other environment lifts the requirements for IEEE floating point as part of the language definition, this decision may be revisited.

    If you are having problems with Display Postscript, you need to upgrade your Java kit---1.2.2-3 and later remove the requirement for Display Postcript extensions, and Java 1.2.2-3 is required with DECwindows V1.2-6 and later.

    For additional information on Java for Alpha systems, please see the OpenVMS documentation (V7.2 and later), and the following site:

    HP Secure Web Server (SWS, formerly CSWS) includes CSWS_JAVA, which provides the following Apache Tomcat technologies: JavaServer Pages 1.1, Java Servlet 2.2, and MOD_JK. Also available is CSWS_PHP, a PHP implementation. (SWS is based on the Apache web server. See SOFT1.)

    13.6 Obtaining user input in DCL CGI script?

    If you choose to use the GET method, then the form data is available in the DCL symbol QUERY_STRING, in URL-encoded format.

    If you use the POST method, then you need to read the form data from stdin. For a DCL CGI script running under the Netscape FastTrack web server, you can read the data using the following READ command:

    $ READ SYS$COMMAND postdata 

    to read the information in.

    The following describes the use of DCL command procedures as CGI scripts with the OSU web server:

    DCL CGI is also discussed in the Writing Real Programs in DCL book, and in the Ask The Wizard website.

    13.7 How can a batch job get its own batch entry number?

    To have a batch procedure retrieve its own batch entry number, use the following:

    $ Entry = F$GETQUI("DISPLAY_ENTRY", - 

    Remember that the entry numbers issued by the OpenVMS Job Controller are always opaque longword values. Do not assume you know the format of the entry number, nor the range of entry numbers you might see, nor the algorithm that is used to assign enty numbers. You should simply assume opaque longword.

    13.8 How do I convert to new CMS or DTM libraries?

    A change was made to the format of the CMS database for CMS libraries starting with V3.5-03---to ensure that earlier versions of CMS are unable to access the database once the "conversion" to V3.5-05 and later is made, you must issue the following two commands when upgrading from V3.5-03 and prior. (The only differences between CMS version V3.5-03 and CMS version V3.5-05 involve changes to ensure that no earlier version of CMS can access the "converted" database, and corrupt it.)

    To perform the "conversion", issue the following commands for each CMS library present:

    $ RENAME disk:[directory]00CMS.* 01CMS.* 
    $ COPY NLA0: disk:[directory]00CMS.CMS 

    The new file 00CMS.CMS must have the same security settings as the 01CMS.CMS file, and is created solely to ensure continued compatibility with tools that expect to find a 00CMS.CMS file (eg: various versions of the Language-Sensitive text editor LSEDIT).

    If you choose to install and use the longer variant names support that is available with CMS V4.1 or later, you cannot mix earlier CMS versions within a cluster. If you attempt to mix older and newer versions, you will typically see the following BADLIB and BADTYPSTR error sequence when accessing the CMS library from the older CMS versions:

    %CMS-F-BADLIB, there is something wrong with your library 
    -CMS-F-BADTYPSTR, header block type is 145; it should be 17 

    Please see the CMS V4.1 release notes for additional details on this.

    To perform the equivalent "conversion" for DEC Test Manager (DTM) V3.5 and prior versions to V3.6 and later versions, issue the following DCL commands for each DTM library present:

    $ RENAME disk:[directory]00DTM.* 01DTM.* 
    $ COPY NLA0: disk:[directory]00DTM.DTM 

    Like CMS, this change is intended to prevent older versions of DTM from accessing newer libraries, and corrupting the contents. Like CMS, once the libraries are renamed, they cannot and should not be renamed back to the older names; like CMS, the changes are not downward-compatible.

    To convert version 1 (ancient) DTM and CMS libraries forward, please see the DTM CONVERT and the CMS CONVERT commands.

    Previous Next Contents Index