CERNlib Software - Copyright (c) CERN, 1993, 1994, 1995 (See COPYRGHT.TXT file containing full CERN Copyright text) CERNlib release 95a ---------------------------------------------------------------------- Table of Contents Last README update: 15-Apr-1995 First release: 2-Apr-1993 ---------------------------------------------------------------------- - Acknowledgements - News - Windows 95/Windows NT issue - Installation Notes - Downloading the distribution files to your machine - Installing the distribution files on your machine ---------------------------------------------------------------------- Acknowledgements ---------------------------------------------------------------------- - This work has been done by Dr.Valery Fine (fine@main1.jinr.dubna.su or fine@vxcern.cern.ch) and Victor Balashov (balashov@cv.jinr.dubna.su) from JINR-Dubna and supported by CERN and JINR institutes ---------------------------------------------------------------------- News ---------------------------------------------------------------------- 1.It has been tested under Windows 95 and Windows NT (without graphics facilities). A pure windoze version of CERNLIB needs your strong demands to be supported and completed. This means you can run your heavy computational application achiving the new multitasking facilities of brand-new Windows's but still can't build a "native" Windows application. (see CHEP'94 "Summaries of papers": http://www.lbl.gov/LBL-Publications/Proceedings/CHEP94/Software-Methodologies /Ab4Ses5.html) 2. Several new approaches have been inverstigated to develop HEP applications with "Free" tools for MS DOS and they may be recommended. 2.1. Using LINUX computer to build CERNLIB-based application and libraries. Since to maitain LINUX version of CERNLIBs we use exact the same tools, namely, F2C - Fortran-to-C convertor and GNU C Compiler, and as LINUX as DJGPP has one and the same an object module structure, it is possisble to use CERNLIB script to build CERNLIB as descibed at "Installation guide for CERNLIB" (see URL: http://wwwcn.cern.ch/asdoc/WWW/install_html3/cernmain.html) 2.2 Using Windows NT and Windows 95 operating system with - DJGPP tools like for MSDOS and - Hamilton C shell to obey "Installation guide for CERNLIB" (see URL: http://wwwcn.cern.ch/asdoc/WWW/install_html3/cernmain.html) under Windoze as well (Hamilton C Shell (tm) Release 2.2 for Windows NT and Windows 95. Copyright (c) 1988 to 1995 by Hamilton Laboratories. Hamilton Laboratories. 21 Shadow Oak Drive, Sudbury, MA 01776-3165 (508) 440-8307, E-mail: hamilton@BIX.com ) Distribution kit of DJGPP tools now contains some new useful things like: 1. Ladybug v1.00: djgpp full screen debugger 2. gdb-4.12 djgpp GNU debugger 3. djgpp.faq FAQ list ======================= | A T T E N T I O N | ======================= The 1.12 version of DJGPP release 1.12m4 contains a wrong version of GNU loader - ld.exe file and a wrong version of GNU C libraries. So there is no reason to upgrade your current DJGPP environment without a good reason. (djgpp.faq p.8.11) We may suggest achiveing new full screen debugger if any. ---------------------------------------------------------------------- Installation Notes ---------------------------------------------------------------------- Since the version 94b CERNLIB for MSDOS contains the following things: 1. CERNLIB batch file to simplify the linkage procedure (as for other platforms) 2. Patchy 5 package 3. EPIO library 4. GEANT 3.21 library Some CERN libraries have been splited to several ones to speed the linkage process up. In fact the following files contains the next libaries: libgeant.a 4730290 GEANT 3.21 package libkern.a 847412 Basic utility subroutines and functions libmath.a 2322236 Mathematical routines - BVSL, GEN, MPA. libdzdoc.a 578060 The graphics library - DZDOC libcernp.a 28016 Additional library containing MS DOS specific routines libgraf.a 259624 The graphics library - HPLOT libgrafg.a 1059188 The graphics library - HIGZ libepio.a 56322 EPIO - EP standard input/output package libcdlib.a 690220 The API for the HEPDB detector geometry and calibration. libpack.a 3346888 HBOOK, ZEBRA, FFREAD, KUIP, MINUIT libpaw.a 2161630 The PAW library, including COMIS, PAW and SIGMA CERNLIB.BAT batch file ====================== To simplify building of your application the CERNLIB.bat file has been implemented. Nowadays to compile and build the executable module you may as follow: 1. Type CERNLIB For instance type: cernlib pack if you need packlib stuff. If you need just kernlib library type CERNLIB command with no parameter. Note: You must point the only "elder" CERN library if you use the several ---- ones. Batch file adds others by automatic, excluded MATHLIB. If you need MATHLIB you must point two CERN libraries. F for example: either cernlib pack math or cernlib graf math or cernlib paw math and so on 2. Convert your fortran sources to C ones. f2c .f 3. Compile and build the executable module gcc .c @cernlib 4. Run your application go32 a.out 5. As option you may apply strip a.out to cut some debug information off and reduce the a.out size. and coff2exe a.out to see a.exe ---------------------------------------------------------------------- Known troubles ---------------------------------------------------------------------- Library Subroutine Descriptions ------- ---------- ------------ libkern.a CHDIRF Doesn't work for Novell directories ---------------------------------------------------------------------- Installation Notes ---------------------------------------------------------------------- The installation has been made on: DECpc 466d2 MTE - AT/486 compatible djgpp 1.12 f2c 95 + gcc 2.6.0 Csaba's GRX graphics library (v.1.03) where: DJGPP is a 32-bit C/C++ development environment for the MS-DOS environment, based on the GNU tools. FTP://oak.oakland.edu:/SimTel/msdos/djgpp and ftp://ftp.delorie.com:/pub/djgpp/dl FAQ: ftp://SimTel/msdos/djgpp/faq*.zip, www: http://www.delorie.com/djgpp/faq/ WWW Home Page: http://www.delorie.com/djgpp/ Mailing list: djgpp-announce@ and djgpp@sun.soe.clarkson.edu subscriptions to listserv@, problems to djgpp-request@ . Latest versions (16.04.95): binutils-2.5.2 bison-1.22 diff-2.6 go32-1.12.maint4 flex-2.4.7 gcc-2.6.3 g db-4.12 gzip-1.2.4 libg++-2.6.2 make-3.71 patch-2.1 sed-1.18 texinfo-3.10 faq-1.00 F2C is fortran to C converter S.I.Feldman, D.M.Gay, M.W. Maimone, N.L.Schryer A Fortran-to-C Converter. Compurting Science Technical Report No. 149. AT&T Bell Laboratories, Murray Hill. NJ 07974 DJGPP has been uploaded to: =============================================================== ASIS01.CERN.CH usr.local/pc_dos50/djgpp =============================================================== Hardware Requirements: A 80386-based IBM compatible PC or PS/2, approximately 4-5Mb of hard drive space, and 512K RAM. Available extended (or expanded under VCPI) memory is strongly recommended. Supported Environment: * Up to 128M of extended memory (expanded under VCPI) * Up to 128M of disk space used for swapping * SuperVGA and VESA modes up to 1240x1024 * 80387 * XMS & VDISK memory allocation strategies * VCPI programs, such as QEMM, DESQview, and 386MAX * DPMI programs, such as Windows 95, Windows NT, Windows 3.x, OS/2, and QDPMI (without graphics facilities) Unsupported: * Multiprocessing (fork()) This is NOT a full implementation of the standard CERNlib distribution, but a selection of what we have considered more useful. Source code is not available. * Special Keyboard functions under KUIP-based applications: -------------------------------------------------------- Along input command line for CERN package like PAW or GXINT one mays use the following keyboard facilities: [Ins] - Toggle between overwritten and instered modes [Del] - Delete character under cursor [Backspace] - Delete Character left cursor position [Home] - Go to to beginnig of line [End] - Go to end of line All Arrows key as ussual - [left]/[right] - one step left/right [up]/[down] - get line from stack [PgDn] - Usefull in graphics mode - delete alhpa-numeric information from screen, leaving only one line at the botton of screen [PgUp] - Reset full screen alhanumeric presentaion. ---------------------------------------------------------------------- Downloading the distribution files to your machine ---------------------------------------------------------------------- mkdir \tmp cd \tmp ftp asisftp.cern.ch (128.141.201.136) ftp> cd /cernlib/pc_dos50/95a/exe ftp> mget README* ftp> binary ftp> mget *.exe ftp> quit The files have been packed using the LHA archiving and compression facility, available in this area (LHA213.exe) or from Public Domain area (for instance from garbo.uwasa.fi/pc/arcers). We have generated self-extracting archives which do not require LHA itself in the unpacking process. We welcome feedback on the distribution methods and procedures used, as well to learn from similar utilities which, from your point of view, are better or more adequate. ---------------------------------------------------------------------- Installing the distribution files in your machine ---------------------------------------------------------------------- 0- If you only want PAW skip go to step 2, otherwise continue. 1- You need the DJGPP tools before using the PC version of CERNlib; these are the steps: a - Read README.DJ b- Create DJGPP directory on your computer. Install DJGPP (gcc compiler, DOS Extender and utilities) following README.DJ. One needs collect and install with INSTALL utility the following files at least: djdev112.zip 1244228 Base development kit gas23bn.zip 302814 gas-2.3 binaries gcc260bn.zip 1318380 gcc-2.6.0 binaries (C only) bnu24bn.zip 1443623 binutils-2.4 binaries install.exe 38054 install utility install.dat 3039 install data-base unzip-dj.exe 138240 unzip utility c- Install the last corrections of DJGPP. The last correction for DJGPP tools are enclosed inside of files: dj112m.doc dj112m.zip where - the number of revision for DJGPP v.1.11. doc - file contains the description of these corrections zip - file contains the corrections itself. You MUST unzip all files like dj112m.zip AFTER the installation BASIC version (see p.1.a) in right order. For instance at the moment 15/04/95 there are four sets of these files: dj112m1.zip dj112m2.zip dj112m3.zip dj112m4.zip One MUST unzip first of all dj112m1.zip file THEN dj112m2.zip and so on in that order. d- install F2C on the same INSTALL directory as DJGPP: Having done p.1 one gets some directories. Among them: djgpp\lib\ djgpp\bin\ djgpp\include\ To install F2C converter you may copy the appropriate directories from ASIS01. These are usr.local/pc_dos50/lib -> djgpp\lib usr.local/pc_dos50/bin -> djgpp\bin usr.local/pc_dos50/include -> djgpp\include containing f2c stuff. d- install the ready-made GRX library on the same INSTALL directory: C:\DJGPP> grxlib.exe Alternatively, you could take the original installation file called cbgrx103.zip and cbgrd103.zip and follow README enclosed. (It will be useful if you cannot find a proper driver for your superVGA card and need to create your own) Note: All DJGPP files contain the appropriate documentation inside. ----- f- Correct your autoexec.bat to introduce the following lines: set CERN=c:/cern rem see documentation for values for this set GO32=topline driver %DJ%/drivers/stdvga.grn call c:\dj\bin\setdjgpp c:\dj c:/dj path c:\dj\bin;c:\cern\bin;%path% g- Complain and send all your other impressions on DJGPP tools to dj@ctron.com. Particularly if you find DJ too slow to build applications. ========================================================== 2- Now you can install the CERN stuff; To install CERN stuff: * Create a "temp" directory, like c:\tmp. b) Download the distribution files in "temp" directory from CERN ASISFTP server as have pointed above. c) Un-pack CERN stuff running appropriate exe modules and point drive where your CERN stuff will be resided. All files will create the proposed directory tree \CERN and place all executables, libraries and tools in place. For example: c:\temp> RZCONV.EXE c:\ will create C:\CERN\BIN directory. Note: Files PAW_PC.EXE and PAWDEMO don't create any directories ----- and will be unpacked in place. e) Replace DJGPP.ENV file came with DJ distribution with DJ root directory to DJGPP.ENV coming with CERN libraries. 3. Read all README files and djgpp.faq - "Frequently Asked Questions list" coming with djgpp before next step. * Add the following lines to C:\AUTOEXEC.BAT SET EDITOR = "put here a path to your favorite text editor" SET KUIPPAGER = "put here a pth to your favorite test browser" SET default_fonts=pc6x14 "put here what kind of a font you'd like too see SET GRXFONT = "points a place, where the fonts coming with GRX libraries are resided" SET SHELL = command.com "points your shell" Note: All these environments are options and user may not ----- point it at all. If you have skipped step 1 add the following line to C:\AUTOEXEC.BAT as well set GO32TMP=c:/tmp ^^^ this is where your paging file goes - if not set, the variables TMP and TEMP are checked in that order It is useful for PC with 4 Mb or less and to provide some command of PAW (like SHELL, EDIT and so on) set GO32=gw 1024 gh 768 nc 256 to set resolution of your screen to 1024x768x256 colors To make sure you has just installed an appropriate driver try TEST.BAT contained within a PAW_PC.EXE archive. 4. To make sure you have got a valid version of PAW - run PAW then type (after prompt): PAW> exec pawtest1 PAW> exec pawtest2 PAW> exec pawtest3 PAW> exec pawtest4 PAW> GO PAW> quit