tinycobol/INSTALL.BeOS

201 lines
7.3 KiB
Plaintext

The TinyCOBOL Project.
TinyCOBOL supports the IA32 (x86) architecture and the following platforms.
- FreeBSD using the GCC compiler.
- Linux using the GCC compiler.
- Win32 using the GCC MinGW (Mingw32) compiler.
- Win32 using the GCC Cygwin compiler and POSIX emulation layer.
- BeOS with a bit of luck!
See 'INSTALL.Win32' file notes for information on the Win32 platforms.
-------------------------------------------------------------------------------
Release Notes: BeOS
Sleepycat's Berkeley DB 4.1.25 compiles perfectly on BeOS with 'configure --enable-compat185 --prefix=/boot/home/config'
do 'make', and 'make install'
Once you have Berkeley DB, continue to build TinyCOBOL
The configure script will attempt to properly configure such systems.
However due to the number of permutations the configure script may
fail to configure for Berkeley's DB library.
If the normal configure fails to properly detect Berkeley's lib DB on
your system, try the following option:
./configure --prefix=/boot/home/config --with-libdb=4
If the '--with-libdb=4' option fails to properly detect Berkeley's DB
on your system, then some temporary links may be used to circumvent
this problem.
ln -s libdb1.so.xx libdb.so
ln -s db1/db.h db.h
Also, copy the ncurses headers to /boot/home/config/include
-------------------------------------------------------------------------------
Requirements:
GCC tool set (GCC, AS, LD):
This compiler generates GAS compatible assembler code for the i386 Linux platform.
The final compilation and linkage can be done by GCC, or by htcobol
using the -x option.
Bison or Berkeley's YACC (byacc) version 1.9.3 is required to compile
the TC parser.
Berkeley's YACC version 1.9.3 (byacc) can be downloaded only from the
TC 'snapshot' web page.
Previous versions will not work, as the table size is inadequate to handle
the large COBOL grammar.
Library DB (version db-1.85.4 or later):
This library is used to access indexed files. It is available on iBiblio(1),
or at Sleepycat(2).
Note that version 1.85 and 2.0 may be named -ldb or -ldb1. Version 2.xx, 3.yy
(xx > 0) may be named -ldb or -ldb2.
Note that later versions of libdb, such as 3.0.55, have a compatibility to
version 1.85 option, when configured with '--enable-compat185' (DB 1.85
compatibility API).
Note that the configure script will try to determine and test for the
library db version using various library names (-ldb -ldb1 -ldb2). However
the test.code and test_suite directory Makefiles will require minor manual
modifications if library db is named as libdb1, libdb2 or libdb3 on your system.
This will be changed at a later date.
The current configure script will try to determine which version of library
db is been used, assuming the library is called libdb.so*, libdb.a.
It does so by checking for the existence of the headers and library, and then
performs the following tests:
- If header db_185.h is found, it does a test compile with libdb, to ensure
that the compatibility to version 1.85 option set.
- If header db_185.h is not found, it searches for header db.h.
- If header db.h is found, it does a test to ensure that the header belongs
to version 1.85 of libdb, and finally it does a test compile, to ensure
it is version 1.85 of libdb.
Note that database file formats are incompatible between version 1.85.4 and 2.xx
and later. Thus indexed files created by a COBOL program using version 1.85.4 of db,
will not be readable by any COBOL program using later versions of db.
1) iBiblio (formerly known as Metalab, Sunsite)
http://www.ibiblio.org/pub/linux/libs/db
db-1.85.4-bin-ELF.tar.gz - shared lib of db 1.85.4
db-1.85.4-src.tar.gz - full source tree for db 1.85.4
2) Sleepycat Software
http://www.sleepycat.com/
versions 2.xx and later (current 4.xx series)
ncurses:
The ncurses library is required. Used in screen I/O.
readline:
The realine library version 2 is optional. Set by WANT_READLINE build option.
-------------------------------------------------------------------------------
To build:
./configure
make
make install (su access required)
Note that the test programs found in test_suite and test.code directories,
can be compiled and run without installing htcobol.
configure options:
--enable and --with options recognized:
--with-compiler=[ARG] use compiler [gcc/kgcc/egcs default=gcc]
--with-yacc=[ARG] use YACC [yacc193 default=bison]
--enable-debug set C compiler debug option on [-g]
--enable-debug-all enable all debug options
--enable-debug-comp enable compiler and scanner debug options
--enable-debug-compiler enable compiler debug option
--enable-debug-scanner enable scanner debug option
--enable-debug-rts enable debug Run-Time option
--enable-debug-rts-move enable debug Run-Time Move routines option
--enable-debug-pp enable debug pre-processor option
--with-libdb=[ARG] use DB library version [2 3]
--with-readline use readline library
--with-dl use dynamic loader for RTS libraries
Note:
The '--enable-debug-comp' configure option will enable the compiler trace
information generated by the compiler, and used to debug the compiler itself.
It will not effect compiler debug option '-D', which adds debugging data to
the generated binary.
Unless you are a developer, or are planning to debug the compiler itself, or
like to look at substantial amounts of trace data, it is recommended that the
above configure option be omitted.
To clean:
Type make clean to clean lib and compiler.
Type make cleanall to clean lib, compiler, utils, test.code.
Type make distclean to clean lib and compiler and config.cache config.status
config.log Makefiles.
Some test programs can be found in test.code directory.
The utils directory contains some utility programs.
cobf2f (Option, not installed by default):
Converts to/from fixed and free-form COBOL formats.
-------------------------------------------------------------------------------
The TinyCOBOL pre-processor.
What it does.
- convert from fixed to free-form COBOL format.
- Process the COPY command.
- Process the REPLACE command (not functional in current version).
The pre-processor is now part of the main compiler.
-------------------------------------------------------------------------------
Environmental variables:
The 'TCOB_OPTIONS_PATH' environment variable sets the directory where the compiler options
file 'htcobolrc' can be found.
The 'TCOBRT_CONFIG_DIR' environment variable sets the directory where the run-time options
file 'htrtconf' can be found.
The 'TCOB_LD_LIBRARY_PATH' and 'LD_LIBRARY_PATH' environment variables sets the Dynamically loaded
shared libraries search path (excluding Win32).
-------------------------------------------------------------------------------
To install:
If necessary edit directories and filenames htconfig.h, Makefile in compiler directory,
and Makefile in lib directory to suit.
Edit the compiler resource file called htcobolrc found in the compiler directory.
The compiler resource file name can be set in htconfig.h.
This file contains installation specific default information.
As su, in the root directory type make install.
-------------------------------------------------------------------------------
Reported problems:
Please email me at matt@verranm.fsnet.co.uk
send me your config.log and a screen print, with a description of your problems