Interactive COBOL Installation Notes Revision 3.66 17-Jul-2008 Please find the following sections on ICOBOL Installation: A) Installing ICOBOL for UNIX B) Installing ICOBOL for Windows C) Scripting Installations under Windows D) Client/Server Installations for ICOBOL Windows Section A. Installing ICOBOL for UNIX -------------------------------------- A single UNIX release of the ICOBOL product includes the Full ICOBOL product. This includes the ICOBOL runtime with utilities, ICOBOL development (with components link kit, user library, and cgiCOBOL), ICNETD server (with both ThinClient servers and the i/o server), ICPERMIT license server, and cgiCOBOL Runtime. A full release requires between 10 - 20MB depending on the flavor. Loading the software creates a directory called "cobol" where xxx is the current revision. For 3.66, the directory is called cobol366. Loading From a CD-ROM release ----------------------------- As super user! (root) Insert the ICOBOL CD-ROM into the cd-rom drive. Mount the cd-rom drive as an ISO-9660 file system. Change directory to where to load the Interactive COBOL release. (Usualy /usr). Issue the following command: tar -xvf //366.tar (where is the mount point of the cdrom and is the appropriate os flavor to be loaded.) This will load the "cobol366" directory into the current directory. Being super user allows date/time stamps to be set correctly. Optionally, the documentation can be loaded by copying the needed file(s) from the doc directory of the CD-ROM to the host system. More on the CD-ROM release can be found by reading the readme in the root of the CD-ROM. Loading From a downloaded release --------------------------------- Change directory to where to load the Interactive COBOL release. (Usually /usr). As super user issue the following commands: mv 366.z 366.tar.Z (change to the appropriate name) uncompress 366.tar.Z tar xvf 366.tar (The v is optional) This will load the "cobol366" directory into the current directory. Being super user allows date/time stamps to be set correctly. Note: Under later versions of Linux, the compress utility is no longer installed by default but the gzip and gunzip utilities are installed and can handle the uncompress function as needed. After Loading the Software - INSTALL ------------------------------------ In most environments (not DG/UX 88K), shared objects are used to access common code. These shared objects are icrun.so. and icsys.so.. (.sl under HP-UX) When used, these objects rev check themselves for integrity. These shared objects must be made available to the needed executables at program load time. This can be done in one of two ways: METHOD ONE (Recommended for production systems) ---------- Move a copy (or a symbolic link) of the needed shared objects into the default directory used by the system's dynamic linker. This is usually the /usr/lib directory. This can be done automatically by running the installic script available in the examples sub-directory. If this method is used, then the installic script will need to be run each time a new revision of ICOBOL is installed. The installic script is provided in the examples sub-directory. As super user, and in the loaded ICOBOL directory, execute: examples/installic To load additional shared objects, the options icblt, icuser, and icodbc are available to the installic script to install those needed objects. The removeic script can be used to remove the shared objects. METHOD TWO (Only recommended for testing and debugging) ---------- Set the system environment variable that is used to find shared objects to include the new ICROOT directory where the shared objects are to be found. In most cases this is the LD_LIBRARY_PATH environment variable. (LIBPATH under AIX, SHLIB_PATH under HP-UX) Thus, to add the new ICROOT to the LD_LIBRARY_PATH you would do: if [ "$LD_LIBRARY_PATH" = "" ]; then LD_LIBRARY_PATH=$ICROOT export LD_LIBRARY_PATH else LD_LIBRARY_PATH=$ICROOT:$LD_LIBRARY_PATH fi This could be done in the script that sets up the PATH and ICROOT for your ICOBOL executables. If this was a separate script before then just add the above lines. If this was part of the users' startup in .profile then just add it there. This method should be used when you do not want to change the /usr/lib directory and/or you will be running several versions of ICOBOL for development and/or testing purposes. ERRORS: ------ If you get an error like: error while loading shared libraries: icsys.so.366: cannot open shared object or dynamic linker: icstat: icsys.so.366 is NEEDED but object does not exist. when running an ICOBOL executable, then the system cannot find the indicated shared object. Either METHOD ONE or TWO must be done to allow the file to be found. For DG/UX 88K, shared objects are only used for icuser.so, icbltn.so, and icodbc.so. Section B. Installing ICOBOL for Windows ------------------------------------------ ************************************************************** ** If an ICOBOL for Windows (2.3x or 2.4x) release is ** installed on the machine it should be uninstalled before ** installing a 3.00+ revision. ************************************************************** ************************************************************** ** If an IC ODBC Driver (pre-1.40) release is installed on ** the machine it should be uninstalled before installing ** the 3.00+ revision of ICOBOL. The IC ODBC Driver is ** installed with the ICOBOL installation. ************************************************************** Starting with the ICOBOL for Windows 2.50 release, the previous version of a revision no longer needs to be uninstalled in order to upgrade to a newer revision. The Installer with 2.50 and up will check for any problem and warn if an uninstall is needed, otherwise an in-place add or upgrade can be done. In addition, after the initial install, the installation program can be re-run to add additional components or to change the values for certain selections such as license file, configuration file, printer control file, etc. The ICOBOL product is available in a download format and a CD format. The download format comes in several pieces. win366.exe A full release including all tools. doc366.exe Provides all the ICOBOL manuals that can be selected individually or together. Stripped down installers -------------------------- win366r.exe No development components, only runtime, licensing server, and ThinClient release win366c.exe A ThinClient (char) Client only release win366g.exe A ThinClient (gui) Client only release The runtime only release does NOT support server installs. The two ThinClient only releases ONLY support the single specified ThinClient client. The CD format has the full release available not as a self-extracting .exe file as in the download. When installing with the CD version using the setup.exe file, a CDROM installation can be done that provides a very minimal install on the hard disk and uses the files from the installation media. In addition, the CD format has a doc directory that holds all the documentation files and a directory that holds Adobe Acrobat reader installation files. It also holds a download directory that has all the download pieces. A full release of the ICOBOL product includes the ICOBOL runtime (with sp2 and FormPrint runtimes), ICOBOL development (with components FormPrint development, sp2 development, link kit, user library, cgiCOBOL, and ICIDE), ICNETD daemon (which includes the i/o server (icios.exe), and both ThinClient servers (icrunrs.exe, icthins.exe)), ICODBC Driver, ICPERMIT, cgiCOBOL Runtime, both ThinClient clients (icrunrc.exe, icthinc.exe), and the IC Web message utility (icwebmsg). All or portions can be selectively installed. By default, installation creates a directory called "icobol" in the "program files" directory. A full server release with the ICIDE requires about 65MB. A full local ICOBOL release requires about 50MB while a runtime-only release is about 15MB. NOTE: The installation will use the directory pointed to by the environment variable TEMP. If this temporary directory cannot be accessed, an appropriate message will be issued. The syntax for the Installation program when using the single self-extracting .exe is shown below: win366.exe [/a [/r|/s] [/u] [/f1] [/f2] ] Where /a Required if any other switches are needed when using the self-extracting .exe. /r Record mode. Writes a script file (.iss) to be used later for an install with no prompting (silent). Cannot be used with the /s switch. If no /f1 switch is used, the file setup.iss is created in the Windows (or WinNT) directory on the boot drive. /s Silent mode. Reads a script file previously produced by a Record mode. Allows for unattended or batch type installs. During a silent install, no user requested prompts are made. Cannot be used with the /r switch. If no /f2 switch is used, the file setup.log is created where the .iss file is located. /f1 Specifies the script file name. Is generally used to read a previously recorded script. Must be a fully qualified name including the .iss extension. /f2 Specifies the log file name. Is generally used to specify a specific log file for a silent install. /u Update install. If a valid revision (2.50 or up) is already installed, Update will perform a silent/batch update using the exact same information that is currently installed. When updating a revision under Windows NT/2000, all services will be stopped, the update performed, and then the services will be re-started. Switches must be separated by spaces. The /f1 and /f2 switches cannot have a space separating the switch from the filename. To build a sample script, execute the install with the record option and take the appropriate selections. After the install is completed, the recorded script can be found in the \Windows directory (\WINNT under Windows NT) as setup.iss. To start in record mode, enter "/a /r" after the win366.exe argument on the command line. The space IS required. Thus you would enter: win366.exe /a /r To re-do an install with the exact same responses, a silent install can be done by entering "/a /s /f1" after the win366.exe on the command line. The spaces are required and pathname should be the path to the script file. When doing a silent install, a log file (SETUP.LOG) is written to the \Windows directory (\WINNT under Windows NT) that tells whether the install succeeded. Thus you would enter: win366.exe /a /s /f1c:\test\setup.iss When updating a revision under Windows NT/2000, all ICOBOL services will be stopped and re-started. By default, win366 unpacks the self-extracting .exe into the TEMP directory and then checks for a previous revision. If a previous revision that does not have its install information available is detected, the installation prompts you to CANCEL the install and remove the old revision. If the install information is available, (by reading a previous install.txt file) then that information is used to pre-load all the needed prompts in the installation. A runtime only version of the installation program is provided as win366r.exe. It only supports a runtime and/or ThinClient client installs (either local or client). The runtime installer cannot be used to update an install that has more than runtime or ThinClient client selections. When installing with Terminal Services installed, make sure that the install is done in Install mode. See the Windows Change command for more information. For CD-ROM releases ------------------- Insert the CD-ROM into the cd-rom drive (E:). Choose Run from the Start menu. In the Open field of the Run dialog, type E:\WIN\SETUP.EXE (or whatever the drive-letter is for the CD-ROM drive). Follow the on screen installation instructions. In addition, the documentation can be loaded by copying the needed file(s) from the doc directory of the CD-ROM to the host system or by running the documentationm installer doc366.exe. More on the CD-ROM release can be found by reading the readme in the root of the CD-ROM. For downloaded releases ----------------------- A. Choose Run from the Start Menu. In the Open field of the Run dialog, type the complete path to WIN366.EXE. (The Interactive COBOL release is contained in a single self-extracting executable with the name WIN366.EXE. A Runtime only version is available as WIN366R.EXE.) B. Follow the on screen installation instructions. Section D. Scripted Installs under Windows --------------------------------------------- The install process for ICOBOL Revision 3.66 under Windows can be scripted such that batch installs can be performed. To build a sample script you must execute the install with the record option and take the appropriate selections. After the install is completed, the recorded script can be found in the \Windows directory (\WINNT under Windows NT/2000) as setup.iss. To start in record mode, enter "/a /r" after the win366.exe argument on the command line. The space IS required. Thus, you would enter: win366.exe /a /r To re-do an install with the exact same responses, a silent install can be done by entering "/a /s /f1" after the win366.exe on the command line. The spaces are required and pathname should be the path to the script file. When doing a silent install, a log file (SETUP.LOG) is written to the \Windows directory (\WINNT under Windows NT/2000) that tells whether the install succeeded. During a silent install, no user requested prompts are made. Below is a sample setup.iss file for a Windows NT/2000 server install. [InstallShield Silent] Version=v5.00.000 File=Response File [File Transfer] OverwriteReadOnly=NoToAll [DlgOrder] Dlg0=SdWelcome-0 Count=17 Dlg1=SdDisplayTopics-0 Dlg2=SdWelcome-1 Dlg3=SdDisplayTopics-1 Dlg4=AskOptions-0 Dlg5=SdAskDestPath-0 Dlg6=MessageBox-0 Dlg7=SdComponentDialog2-0 Dlg8=AskOptions-1 Dlg9=AskText-0 Dlg10=AskOptions-2 Dlg11=SdSelectFolder-0 Dlg12=AskPath-0 Dlg13=SdShowDlgEdit2-0 Dlg14=AskOptions-3 Dlg15=SdStartCopy-0 Dlg16=SdFinishReboot-0 [SdWelcome-0] Result=1 [SdDisplayTopics-0] Result=12 [SdWelcome-1] Result=1 [SdDisplayTopics-1] Result=1 [AskOptions-0] Result=1 Sel-0=0 Sel-1=0 Sel-2=1 [SdAskDestPath-0] szDir=C:\Program Files\ICOBOL Result=1 [MessageBox-0] Result=1 [SdComponentDialog2-0] Runtime-type=string Runtime-count=2 Runtime-0=Runtime\Required Runtime-1=Runtime\Local Development\spII-type=string Development\spII-count=4 Development\spII-0=Development\spII\Card Development\spII-1=Development\spII\CRT Development\spII-2=Development\spII\Required Development\spII-3=Development\spII\Local Development-type=string Development-count=5 Development-0=Development\LinkKit Development-1=Development\UserLibrary Development-2=Development\Required Development-3=Development\Local Development-4=Development\spII ODBC-type=string ODBC-count=6 ODBC-0=ODBC\Windows System Files ODBC-1=ODBC\Core-Desktop DB Files ODBC-2=ODBC\Core ODBC-3=ODBC\Uninstall Files ODBC-4=ODBC\Required ODBC-5=ODBC\Local Network-type=string Network-count=2 Network-0=Network\Required Network-1=Network\Local License-type=string License-count=2 License-0=License\Required License-1=License\Local Component-type=string Component-count=6 Component-0=Runtime Component-1=Development Component-2=ODBC Component-3=Network Component-4=License Component-5=Server Result=1 [AskOptions-1] Result=1 Sel-0=1 Sel-1=0 Sel-2=0 [AskText-0] szText=C:\test200\system.lic Result=1 [AskOptions-2] Result=1 Sel-0=1 Sel-1=1 [SdSelectFolder-0] szFolder=Interactive COBOL Result=1 [AskPath-0] szPath=C:\test200\ Result=1 [SdShowDlgEdit2-0] szEdit1=windows.cfi szEdit2=windows.pq Result=1 [AskOptions-3] Result=1 Sel-0=0 Sel-1=1 [SdStartCopy-0] Result=1 [Application] Name=Interactive Cobol Version=3.66.000 Company=Egan Systems Lang=0009 [SdFinishReboot-0] Result=1 BootOption=0 Below is a sample setup.log file [InstallShield Silent] Version=v5.00.000 File=Log File [Application] Name=Interactive Cobol Version=3.66.000 Company=Egan Systems Lang=0009 [ResponseResult] ResultCode=0 By using the recording mode and silent installation along with any needed changes to the script file totally batch installs can be done. LOG File -------- The SETUP.LOG file contains three sections. The first section, [InstallShield Silent], identifies the version of InstallShield Silent used in the silent installation. It also identifies the file as a log file. The second section, [Application], identifies the installed application's name and version, and the company name. The third section, [ResponseResult], contains the result code indicating whether or not the silent installation succeeded. An integer value is assigned to the ResultCode keyname in the [ResponseResult] section. InstallShield places one of the following return values after the ResultCode keyname: 0 Success. -1 General error. -2 Invalid mode. -3 Required data not found in the SETUP.ISS file. -4 Not enough memory available. -5 File does not exist. -6 Cannot write to the response file. -7 Unable to write to the log file. -8 Invalid path to the .iss file -9 Not a valid list type (string or number). -10 Data type is invalid. -11 Unknown error during setup. -12 Dialogs are out of order. -51 Cannot create the specified folder. -52 Cannot access the specified file or folder. -53 Invalid option selected. SETUP.LOG is the default name for the silent installation log file, and its default location is the directory where the installation's .INS file resides. You can specify a different name and location for the SETUP.LOG using the /f2 switch. In addition, an Update switch is available that allows subsequent revisions of ICOBOL to update the installed revision using all the same information that was used before. The /U switch can be used at install time to perform this update. Section D. Client/Server Installs for ICOBOL (Windows) ------------------------------------------------------- The Client/Server installation provides the mechanism to store most of the ICOBOL release files on a server and use the software from many clients. This is very helpful in managing software revisions and in controlling total disk usage. It does have a drawback in the the server must be available to run the software and some network bandwidth is consumed by loading programs. On a server install, all files on the release are copied into the release directory and a client install directory is provided. Only the pieces selected in the server install are actually setup on the server machine. On a client install, only a small subset of files are copied onto the local machine. The software is setup to access the release directory on the server machine. This is usually done via a UNC name like "\\myserver\c\program files\icobol". Client installs can be performed using the normal Windows installers and selecting the Client install option or the setup.exe file can be executed from the client subdirectory in the server release directory. **************************************************************** In particular ThinClient client installs using the Client (Network) install will provide a VERY small footprint on the client machine and provide for automatic updates whenever the server is updated. **************************************************************** One note to make is that when doing a client install for Windows NT clients, any ICOBOL service must be installed in a fashion that allows the network to be available before the ICOBOL service can be started since the executables are being used from a network server. This is done automatically at installation time by using the "+NetworkProvider" Dependency. You are prompted for a Username/Password that allows the client machine to access files on the server. The username that is specified must have the following user rights (privileges) on the client: a) Act as Part of the operating system, b) Debug programs, c) Increase quotes, d) Log on as a service, and e) Replace a process level token. On the server, the specified username must have the "Access the computer from the network" user right (privilege). Usually this particular user would not be given "Log on locally" user right. This ICOBOL user profile can not be Administrator or localsystem. Local usernames should be entered as ".\user". Domain usernames should be entered as "domain\user". End of Readme