CSWB, as well as some other products such as the CSWS, require LibIDL 0.6.3 or later in order to compile.
The LibIDL version that used to be on the HP OpenVMS website, and can still be found at their FTP site here as well as on the OpenVMS Open Source CD, is v0.6.5.
It only comes in a compilable source version, and requires GTK version 1.2.7 or greater to be installed in order to successfully compile. Additionally, it requires some re-configuration for the specific environment in which it is being compiled/installed, and I also found I had to undertake a few modifications to get it to successfully compile:
1) edit libIDL-config-VMS. to reflect installation environment by adjusting installation location of GTK+ and libIDL source by changing these lines to the correct locations of the libIDL source, and GTK install, mine were:
LIBIDL_ROOT=/dka0/libIDL/v0.6.5
GTK_ROOT=/dka0/software/gtk
2) edit build_vms.sh and change the following lines
vms_defines="-Wc/name=(AS_IS,short)"
to
vms_defines="-names_as_is_short"
delete every instance of -DCPP_PROGRAM=\"cc\ -E\"
change
ar c libIDL.a parser.o lexer.o ns.o util.o vms_alloca.o
to
ar rc libIDL.a parser.o lexer.o ns.o util.o
(note the change from ar c to ar rc)
delete or comment out the lines (no longer required as VMS now has malloc):
#
echo Compiling vms_alloca...
cc -c \
$vms_defines \
-o vms_alloca.o vms_alloca.c
3) edit util.c as follows:
replace
CPP_PROGRAM "
with
"cxx -E
The modifications to remove the -DCPP_PROGRAM from util.c are a fudge, I can't seem to get the original approach to work which is to pass the substitution via the -D command line parameter. It's possible if there are no spaces, i.e. -DCPP_PROGRAM=\"cxx\" but when an (escaped) space is used, i.e. -DCPP_PROGRAM=\"cc\ -E\" the program fails to compile.
As is often the case, the default LibIDL source doesn't enable optimizations, but it's fairly easy to edit the source to enable optimized code to be produced, just edit the following line in build_vms.sh to:
vms_defines="-names_as_is_short -opt=(tune=host)"
I also managed to compile version 0.6.8, available from here. I copied over the following files from the 0.6.5 VMS version:
build_vms.sh
libIDL-config-VMS.
readme.vms
After making the modifications above for 0.6.5, it required further modifications:
edit libIDL-config-VMS.
and change LIBIDL_LIBRARY_VERSION=0.6.5 to LIBIDL_LIBRARY_VERSION=0.6.8
and amend the definition of LIBIDL_ROOT to point to the 0.6.8 source code
edit build_vms.sh and replace:
sed \
-e 's/@LIBIDL_MAJOR_VERSION@/0/g' \
-e 's/@LIBIDL_MINOR_VERSION@/6/g' \
-e 's/@LIBIDL_MICRO_VERSION@/5/g' \
with:
sed \
-e 's/@LIBIDL_MAJOR_VERSION@/0/g' \
-e 's/@LIBIDL_MINOR_VERSION@/6/g' \
-e 's/@LIBIDL_MICRO_VERSION@/8/g' \
-e 's/@HAVE_WCHAR_H@/1/g' \
-e 's/@HAVE_WCSTR_H@/1/g' \
and find the lines:
echo Compiling util...
cc -c \
and add immediately afterwards the following line:
-DCPP_NOSTDINC=\"-nostdinc\"
For completeness, I also edited readme.vms and replaced the two instance of 0.6.5 with 0.6.8
Later versions of LibIDL are available from here, but versions 0.7.x and greater require GTK+ version 2.x or greater.
This blog serves as a record of my attempts to build various software packages on OpenVMS Alpha. The aim is to get the original CSWB source to build, so I can then update the source to a new version of SeaMonkey...
Showing posts with label HP. Show all posts
Showing posts with label HP. Show all posts
Wednesday, 20 March 2019
Tuesday, 12 March 2019
Installing Compilers, etc, from the Software Product Library
CSWB requires a C, C++, and Macro64 compiler to be installed and licensed.
First step to installing Software is to copy the ZIP and UNZIP utilities from the FREEWARE CD into the SYS$COMMON:[SYSEXE] folder.
Then add the following lines to the SYLOGIN.COM script:
unzip :== $sys$common:[sysexe]unzip.exe
zip :== $sys$common:[sysexe]zip.exe
Through the Hobbyist program and download package, and some old SPL CDs, I installed and licensed the following software products:
HP C Compiler v7.3-009
HP C++ Compiler v7.3-009
DEC Fortran Compiler v8.2-104679-48H9K
DEC CXML v5.2-1
Ada Compiler v3.5
Pascal Compiler v6.1-116
BASIC Compiler v1.7
COBOL Compiler v2.9-1453
Macro64 Assembler v1.1
I also installed Modular Management System (MMS) v3.8 from the DECSET 12.8 ECO1 package, but didn't install the rest of the DECSET package. I prefer MMK to MMS, but find its sometimes useful to have MMS available in case I suspect MMK is the cause of a compilation problem.
I also have a 7.3 ECO1 version of the HP C Compiler on an old OpenVMS SPL CD, but when I installed it seemed to cause some difficulty compiling programs, and the help-file was full of references to Tru64 which was weird.
Most require startup scripts to be called within the SYSTARTUP_VMS.COM script:
$ @SYS$STARTUP:DECC$STARTUP.COM
$ @SYS$STARTUP:CCXX$STARTUP.COM
$ @SYS$STARTUP:ADA$STARTUP.COM
$ @SYS$STARTUP:FORT$STARTUP.COM
$ @SYS$STARTUP:CXML$STARTUP.COM
$ @SYS$STARTUP:PASCAL$STARTUP.COM
$ @SYS$STARTUP:DECSET$ENVMGR_STARTUP.COM
$ @SYS$STARTUP:MMS$STARTUP.COM
First step to installing Software is to copy the ZIP and UNZIP utilities from the FREEWARE CD into the SYS$COMMON:[SYSEXE] folder.
Then add the following lines to the SYLOGIN.COM script:
unzip :== $sys$common:[sysexe]unzip.exe
zip :== $sys$common:[sysexe]zip.exe
Through the Hobbyist program and download package, and some old SPL CDs, I installed and licensed the following software products:
HP C Compiler v7.3-009
HP C++ Compiler v7.3-009
DEC Fortran Compiler v8.2-104679-48H9K
DEC CXML v5.2-1
Ada Compiler v3.5
Pascal Compiler v6.1-116
BASIC Compiler v1.7
COBOL Compiler v2.9-1453
Macro64 Assembler v1.1
I also installed Modular Management System (MMS) v3.8 from the DECSET 12.8 ECO1 package, but didn't install the rest of the DECSET package. I prefer MMK to MMS, but find its sometimes useful to have MMS available in case I suspect MMK is the cause of a compilation problem.
I also have a 7.3 ECO1 version of the HP C Compiler on an old OpenVMS SPL CD, but when I installed it seemed to cause some difficulty compiling programs, and the help-file was full of references to Tru64 which was weird.
Most require startup scripts to be called within the SYSTARTUP_VMS.COM script:
$ @SYS$STARTUP:DECC$STARTUP.COM
$ @SYS$STARTUP:CCXX$STARTUP.COM
$ @SYS$STARTUP:ADA$STARTUP.COM
$ @SYS$STARTUP:FORT$STARTUP.COM
$ @SYS$STARTUP:CXML$STARTUP.COM
$ @SYS$STARTUP:PASCAL$STARTUP.COM
$ @SYS$STARTUP:DECSET$ENVMGR_STARTUP.COM
$ @SYS$STARTUP:MMS$STARTUP.COM
Saturday, 9 March 2019
Installing OpenVMS
OpenVMS was installed from CD-ROM using the ALPHA084 Hobbyist ISO, all installation/configuration options were geared towards a non-clustered install with a focus on maximising performance (building the SWB is estimated to take 10-12hrs on a DS20e).
Hard drive for installation: DKA0, and this was INITALIZEd as ODS-5 with hard links enabled.
DECnet: not installed
DECwindows Motif: installed
DECnet-Plus: not installed
DECnet Phase IV: not installed
HP TCP/IP Service: installed
Once installation was complete, the LPKs were installed and the system rebooted
Next steps were to decompress all the system libraries:
$ @SYS$UPDATE:LIBDECOMP.COM
Then a few additional modifications to the drive structure, namely enabling Access Dates, and disabling high water marking:
$ SET VOLUME DKA0: /VOLUME_CHARACTERISTICS=(ACCESS_DATES) /NOHIGHWATER_MARKING
Then all the OS patches I could find were installed:
DEC AXPVMS VMS84A_PCSI V4.0
DEC AXPVMS VMS84A_UPDATE V11.0
DEC AXPVMS VMS84A_MANAGE V2.0
DEC AXPVMS VMS84A_LDAP V3.0
DEC AXPVMS VMS84A_F11X V3.0
DEC AXPVMS VMS84A_ENCRYPT V2.2
DEC AXPVMS VMS84A_ACMELDAP v3.0
HP AXPVMS HPBINARYCHECKER V1.2
Followed by various TCPIP patches, and upgrading the core SSL
DEC AXPVMS TCPIP V5.7-13ECO5
DEC AXPVMS TELNET_PAT V5.7-13ECO5A
DEC AXPVMS TCPIP_CVE_PAT V5.7-ECO5
HP AXPVMS SSL V1.4-502
HP AXPVMS SSL1 V1.0-2C
I know there are newer versions of OpenSSL available, and will compile and install them in due course - I just wanted to first get the official HP versions installed.
If anyone has any additional/new patches I'd love to get hold of them...
Hard drive for installation: DKA0, and this was INITALIZEd as ODS-5 with hard links enabled.
DECnet: not installed
DECwindows Motif: installed
DECnet-Plus: not installed
DECnet Phase IV: not installed
HP TCP/IP Service: installed
Once installation was complete, the LPKs were installed and the system rebooted
Next steps were to decompress all the system libraries:
$ @SYS$UPDATE:LIBDECOMP.COM
Then a few additional modifications to the drive structure, namely enabling Access Dates, and disabling high water marking:
$ SET VOLUME DKA0: /VOLUME_CHARACTERISTICS=(ACCESS_DATES) /NOHIGHWATER_MARKING
Then all the OS patches I could find were installed:
DEC AXPVMS VMS84A_PCSI V4.0
DEC AXPVMS VMS84A_UPDATE V11.0
DEC AXPVMS VMS84A_MANAGE V2.0
DEC AXPVMS VMS84A_LDAP V3.0
DEC AXPVMS VMS84A_F11X V3.0
DEC AXPVMS VMS84A_ENCRYPT V2.2
DEC AXPVMS VMS84A_ACMELDAP v3.0
HP AXPVMS HPBINARYCHECKER V1.2
Followed by various TCPIP patches, and upgrading the core SSL
DEC AXPVMS TCPIP V5.7-13ECO5
DEC AXPVMS TELNET_PAT V5.7-13ECO5A
DEC AXPVMS TCPIP_CVE_PAT V5.7-ECO5
HP AXPVMS SSL V1.4-502
HP AXPVMS SSL1 V1.0-2C
I know there are newer versions of OpenSSL available, and will compile and install them in due course - I just wanted to first get the official HP versions installed.
If anyone has any additional/new patches I'd love to get hold of them...
Subscribe to:
Posts (Atom)