Compiling HWMan WPS Class on ArcaOS 5.x
By Martin Iturbide
This article is the result of my exercise of trying to compile a WPS class on 2018. On this case I had choosen to compile HWMan WPS Class to learn about the built procedure.
Contents
Software Required
Tool | Link | Components |
---|---|---|
IBM C and C++ Compilers, Version 3.6.5 with fixpack 2 | It contains icc.exe, alp.exe ... | |
IBM Device Driver Kit | This program makes a reference to "RMCALLS.H" that is included on the DDK, that is why it is required. | |
IBM OS/2 Toolkit 4.5 | It contains nmake.exe and required libraries to compile. | |
emxupd.exe | [1] | |
HWMan Source Code |
Preparing the Environment
Installing IBM C and C++ Compilers, Version 3.6.5
Installing "IBM C and C++ Compilers Version 3.6.5" can be tricky since you need Netscape navigator to work as the installer tool. The good thing is that the installer includes Netscape on the list. So you can install Netscape on ArcaOS (if you didn't install it when you install the OS) from it.
The install procedure is just straightforward. You can only install the "basic" components of this tool and it will work for this exercise.
CONFIG.SYS
Here it is a final view of some key elements of the config.sys paths and libpaths.
Compile Procedure
Checking the "make" file
Make Procedure
The way to start the compile process is to run the "Command line" of the development environment, change to the directory where you copied the source code and run "nmake".
The procedure will stop without errors
Remember that you can also log the output of the command in case you want to read the full text. You can do that by running:
nmake >out.txt
Take a moment to see the files that had been generated.
You can see that some .obj .res and .map files were generated and the most important file is hwman.dll which is the DLL that contains the compiled and linked WPS class application.
Lar's has also shared with me some other tips to run "nmake" on different ways:
- "nmake" to do a normal build
- "nmake "DEBUG=1"" to build with debug info
- "nmake -a" to rebuild all
- "nmake -a "DEBUG=1"" to rebuild all with debug info
Tools and Compiler Versions
This are the versions of each tool and compiler I used:
Tool | Date | File Size | Version | Source |
---|---|---|---|---|
icc.exe | 2000-11-24 12:44a | 57,078 bytes | 3.6 FP2 | From IBM C and C++ Compilers, Version 3.6.5 with FP2 |
sc.exe | 1999-06-30 11:12p | 50,296 bytes | OS2TK45 | |
alp.exe | 2001-05-25 | 466,944 bytes | 4.00.008 | OS2TK45 |
rc.exe | 2003-01-30 / 5.00.007 | 399,538 bytes | IBM RC (Resource Compiler) Version 5.00.007 Jan 30 2003 | Included on ArcaOS 5.x |
ilink.exe | 2000-11-24 1:27a / 03.06.PPK1001120 | 110,247 bytes | IBM Version. Version 3.6 with Fixpack 2. | From IBM C and C++ Compilers, Version 3.6.5 with FP2 |
dllrname.exe | 2000-11-24 1:26a | 35,679 bytes | IBM C/C++ Tools Version 2.0 - DLL Rename Utility | From IBM C and C++ Compilers, Version 3.6.5 with FP2 |
emxupd.exe | 1998-12-19 9:27p | 34,304 bytes | From hobbes | |
nmake.exe | bytes |