| 1 | ZLIB version 1.2.8 for AS400 installation instructions | 
 
 
 
 
 | 2 |  | 
 
 
 
 
 | 3 | I) From an AS400 *SAVF file: | 
 
 
 
 
 | 4 |  | 
 
 
 
 
 | 5 | 1)      Unpacking archive to an AS400 save file | 
 
 
 
 
 | 6 |  | 
 
 
 
 
 | 7 | On the AS400: | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | _       Create the ZLIB AS400 library: | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 | CRTLIB LIB(ZLIB) TYPE(*PROD) TEXT('ZLIB compression API library') | 
 
 
 
 
 | 12 |  | 
 
 
 
 
 | 13 | _       Create a work save file, for example: | 
 
 
 
 
 | 14 |  | 
 
 
 
 
 | 15 | CRTSAVF FILE(ZLIB/ZLIBSAVF) | 
 
 
 
 
 | 16 |  | 
 
 
 
 
 | 17 | On a PC connected to the target AS400: | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | _       Unpack the save file image to a PC file "ZLIBSAVF" | 
 
 
 
 
 | 20 | _       Upload this file into the save file on the AS400, for example | 
 
 
 
 
 | 21 | using ftp in BINARY mode. | 
 
 
 
 
 | 22 |  | 
 
 
 
 
 | 23 |  | 
 
 
 
 
 | 24 | 2)      Populating the ZLIB AS400 source library | 
 
 
 
 
 | 25 |  | 
 
 
 
 
 | 26 | On the AS400: | 
 
 
 
 
 | 27 |  | 
 
 
 
 
 | 28 | _       Extract the saved objects into the ZLIB AS400 library using: | 
 
 
 
 
 | 29 |  | 
 
 
 
 
 | 30 | RSTOBJ OBJ(*ALL) SAVLIB(ZLIB) DEV(*SAVF) SAVF(ZLIB/ZLIBSAVF) RSTLIB(ZLIB) | 
 
 
 
 
 | 31 |  | 
 
 
 
 
 | 32 |  | 
 
 
 
 
 | 33 | 3)      Customize installation: | 
 
 
 
 
 | 34 |  | 
 
 
 
 
 | 35 | _       Edit CL member ZLIB/TOOLS(COMPILE) and change parameters if needed, | 
 
 
 
 
 | 36 | according to the comments. | 
 
 
 
 
 | 37 |  | 
 
 
 
 
 | 38 | _       Compile this member with: | 
 
 
 
 
 | 39 |  | 
 
 
 
 
 | 40 | CRTCLPGM PGM(ZLIB/COMPILE) SRCFILE(ZLIB/TOOLS) SRCMBR(COMPILE) | 
 
 
 
 
 | 41 |  | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | 4)      Compile and generate the service program: | 
 
 
 
 
 | 44 |  | 
 
 
 
 
 | 45 | _       This can now be done by executing: | 
 
 
 
 
 | 46 |  | 
 
 
 
 
 | 47 | CALL PGM(ZLIB/COMPILE) | 
 
 
 
 
 | 48 |  | 
 
 
 
 
 | 49 |  | 
 
 
 
 
 | 50 |  | 
 
 
 
 
 | 51 | II) From the original source distribution: | 
 
 
 
 
 | 52 |  | 
 
 
 
 
 | 53 | 1)      On the AS400, create the source library: | 
 
 
 
 
 | 54 |  | 
 
 
 
 
 | 55 | CRTLIB LIB(ZLIB) TYPE(*PROD) TEXT('ZLIB compression API library') | 
 
 
 
 
 | 56 |  | 
 
 
 
 
 | 57 | 2)      Create the source files: | 
 
 
 
 
 | 58 |  | 
 
 
 
 
 | 59 | CRTSRCPF FILE(ZLIB/SOURCES) RCDLEN(112) TEXT('ZLIB library modules') | 
 
 
 
 
 | 60 | CRTSRCPF FILE(ZLIB/H)       RCDLEN(112) TEXT('ZLIB library includes') | 
 
 
 
 
 | 61 | CRTSRCPF FILE(ZLIB/TOOLS)   RCDLEN(112) TEXT('ZLIB library control utilities') | 
 
 
 
 
 | 62 |  | 
 
 
 
 
 | 63 | 3)      From the machine hosting the distribution files, upload them (with | 
 
 
 
 
 | 64 | FTP in text mode, for example) according to the following table: | 
 
 
 
 
 | 65 |  | 
 
 
 
 
 | 66 | Original    AS400   AS400    AS400 AS400 | 
 
 
 
 
 | 67 | file        file    member   type  description | 
 
 
 
 
 | 68 | SOURCES                Original ZLIB C subprogram sources | 
 
 
 
 
 | 69 | adler32.c           ADLER32  C     ZLIB - Compute the Adler-32 checksum of a dta strm | 
 
 
 
 
 | 70 | compress.c          COMPRESS C     ZLIB - Compress a memory buffer | 
 
 
 
 
 | 71 | crc32.c             CRC32    C     ZLIB - Compute the CRC-32 of a data stream | 
 
 
 
 
 | 72 | deflate.c           DEFLATE  C     ZLIB - Compress data using the deflation algorithm | 
 
 
 
 
 | 73 | gzclose.c           GZCLOSE  C     ZLIB - Close .gz files | 
 
 
 
 
 | 74 | gzlib.c             GZLIB    C     ZLIB - Miscellaneous .gz files IO support | 
 
 
 
 
 | 75 | gzread.c            GZREAD   C     ZLIB - Read .gz files | 
 
 
 
 
 | 76 | gzwrite.c           GZWRITE  C     ZLIB - Write .gz files | 
 
 
 
 
 | 77 | infback.c           INFBACK  C     ZLIB - Inflate using a callback interface | 
 
 
 
 
 | 78 | inffast.c           INFFAST  C     ZLIB - Fast proc. literals & length/distance pairs | 
 
 
 
 
 | 79 | inflate.c           INFLATE  C     ZLIB - Interface to inflate modules | 
 
 
 
 
 | 80 | inftrees.c          INFTREES C     ZLIB - Generate Huffman trees for efficient decode | 
 
 
 
 
 | 81 | trees.c             TREES    C     ZLIB - Output deflated data using Huffman coding | 
 
 
 
 
 | 82 | uncompr.c           UNCOMPR  C     ZLIB - Decompress a memory buffer | 
 
 
 
 
 | 83 | zutil.c             ZUTIL    C     ZLIB - Target dependent utility functions | 
 
 
 
 
 | 84 | H                      Original ZLIB C and ILE/RPG include files | 
 
 
 
 
 | 85 | crc32.h             CRC32    C     ZLIB - CRC32 tables | 
 
 
 
 
 | 86 | deflate.h           DEFLATE  C     ZLIB - Internal compression state | 
 
 
 
 
 | 87 | gzguts.h            GZGUTS   C     ZLIB - Definitions for the gzclose module | 
 
 
 
 
 | 88 | inffast.h           INFFAST  C     ZLIB - Header to use inffast.c | 
 
 
 
 
 | 89 | inffixed.h          INFFIXED C     ZLIB - Table for decoding fixed codes | 
 
 
 
 
 | 90 | inflate.h           INFLATE  C     ZLIB - Internal inflate state definitions | 
 
 
 
 
 | 91 | inftrees.h          INFTREES C     ZLIB - Header to use inftrees.c | 
 
 
 
 
 | 92 | trees.h             TREES    C     ZLIB - Created automatically with -DGEN_TREES_H | 
 
 
 
 
 | 93 | zconf.h             ZCONF    C     ZLIB - Compression library configuration | 
 
 
 
 
 | 94 | zlib.h              ZLIB     C     ZLIB - Compression library C user interface | 
 
 
 
 
 | 95 | as400/zlib.inc      ZLIB.INC RPGLE ZLIB - Compression library ILE RPG user interface | 
 
 
 
 
 | 96 | zutil.h             ZUTIL    C     ZLIB - Internal interface and configuration | 
 
 
 
 
 | 97 | TOOLS                  Building source software & AS/400 README | 
 
 
 
 
 | 98 | as400/bndsrc        BNDSRC         Entry point exportation list | 
 
 
 
 
 | 99 | as400/compile.clp   COMPILE  CLP   Compile sources & generate service program | 
 
 
 
 
 | 100 | as400/readme.txt    README   TXT   Installation instructions | 
 
 
 
 
 | 101 |  | 
 
 
 
 
 | 102 | 4)      Continue as in I)3). | 
 
 
 
 
 | 103 |  | 
 
 
 
 
 | 104 |  | 
 
 
 
 
 | 105 |  | 
 
 
 
 
 | 106 |  | 
 
 
 
 
 | 107 | Notes:  For AS400 ILE RPG programmers, a /copy member defining the ZLIB | 
 
 
 
 
 | 108 | API prototypes for ILE RPG can be found in ZLIB/H(ZLIB.INC). | 
 
 
 
 
 | 109 | Please read comments in this member for more information. | 
 
 
 
 
 | 110 |  | 
 
 
 
 
 | 111 | Remember that most foreign textual data are ASCII coded: this | 
 
 
 
 
 | 112 | implementation does not handle conversion from/to ASCII, so | 
 
 
 
 
 | 113 | text data code conversions must be done explicitely. | 
 
 
 
 
 | 114 |  | 
 
 
 
 
 | 115 | Mainly for the reason above, always open zipped files in binary mode. |