OS/2 C-Kermit 5A(189) July 1993 INSTRUCTIONS FOR BUILDING FROM SOURCE CODE OS/2 C-Kermit can be built using Microsoft C 6.0, IBM C Set/2, or GNU CC. One makefile supports all three: ckoker.mak. Command Development Environment nmake -f ckoker.mak msc Microsoft C 6.00. Builds a 16-bit version. nmake -f ckoker.mak mscd Microsoft C 6.00, with debugging info included. In the MSC link step, you might get a message about LLIBCEP.LIB not found. At the LINK prompt, simply type: LLIBCE. nmake -f ckoker.mak ibmc IBM C Set/2, 32-bit, static linking nmake -f ckoker.mak ibmcd IBM C Set/2, 32-bit, static linking, debug info. IBM C/C++ doesn't come with a MAKE program, but you can use Microsoft NMAKE or DMAKE, etc. nmake -f ckoker.mak gcc EMX 0.8e + GNU CC 2.2.2, 32-bit, dynamic linking nmake -f ckoker.mak gccd Same, debugging info included. Note the -G2 switch in the CFLAGS string. This builds the program optimized for the 80286 processor. When building a 32-bit version with IBM C or GCC, you can change this to G3 for the 386, to G4 for the 486, and G5 for the Pentium. Reportedly, G4 makes the program run noticably faster on the 486 and above (by optimizing instruction sequences for pipelining) without seriously affecting its performance on the 386. The affect of G4 on the 286 is not known. However, G4 makes the program about 30K bigger so we normally build the distribution version without it so it'll fit on the 720K diskette. GNU EMX/GCC does not come with a MAKE program, but Microsoft or IBM NMAKE can be used, or also the public-domain DMAKE (available from OS/2 archive sites like ftp-os2.nmsu.edu), or GNU make. C-Kermit programs built with GNU CC can only be run on OS/2 systems that have the dynamic libraries from the OS/2 developers kit on disk. As of version 5A(189), OS/2 C-Kermit supports TCP/IP connections if you have TCP/IP installed on your OS/2 system. Linking is still static except for the TCP/IP library, which is linked dynamically to (a) keep the size of the program down, and (b) to allow the program to take advantage of updated versions of TCP/IP without needing to be rebuilt (IBM issues CSD's about once a month). To build C-Kermit with TCP/IP support (for which you need the IBM TCP/IP libraries and header files, and probably also IBM C Set/2), edit CKOKER.MAK to include -DTCPSOCKET and -DTCPIBM in the "DEFINES =" section, and just below it, "LIBS = " should indicate TCPIPDLL.LIB. With DEFINES and LIBS set up for a TCP/IP build, an additional file is produced, called CKOTCP.DLL. On systems that have TCP/IP installed, this file can be discarded. On systems that do NOT have IBM TCP/IP installed, this file must be renamed to TCPIPDLL.DLL and copied into the C:\OS2\DLL directory. (NOTE: There is a new INSTALL.CMD script that takes care of all this automatically for the end user.) A 16-bit version can be produced using the MSC entry with the DEFINES and LIBS set up for TCP/IP as just described, if you have Microsoft C 6.00 *and* the IBM TCP/IP libraries and include files on your disk. If the IBM-supplied TCPIP\INCLUDE\NETLIB.H file contains the following line: #define SIGALRM 0 You must remove it before building the 16-bit version with MSC. The optional SYSLEVEL.CKO files, CKOSYSL.CK1 (16-bit) and CKOSYSL.CK2 (32-bit), must be created by hand using the OS/2 EDTSYSLV.EXE program. See the comments in the CKOKER.MAK and CKOKER.BWR files for further instructions. (End of CKOMAK.HLP)