Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Comix 3.0 Reference Manual - <b>installation</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Installation
------------------------------------------------------------------------------

This chapter describes installing and linking with Comix.

Before installing and using Comix, as with any software product, a complete
backup of your system should be made.  This guards against any possible
incompatibilities or problems that you may run into.

Files

    Basic Files

All Comix files are located in the \COMIX directory.  All subdirectories
mentioned are contained in this directory.  The first files for Comix are:

o   cmx.ng

    This is the Norton Guide for Comix.
    
o   cmx.lnk

    This is the link script for Blinker which efficiently dynamically
    overlays the Comix library.

The following files need to be available to use Comix.  Copy them from the
\52 directory.

o   cmx52.lib

    This is the library file which contains the Comix RDD.

o   cmx52.ch

    This is the header file which allows you to use the extended command
    syntax.

o   cmx52.obj

    This object file is used to make Comix the default RDD (instead of
    DBFNTX).

cmx52.lib should be placed in your library directory (e.g., e:\clip52\lib).

cmx52.ch should be placed in the Clipper include directory (e.g.,
e:\clip52\include).

cmx52.obj should be placed in your Clipper obj directory (e.g.,
e:\clip52\obj).

Comix can be fully dynamically overlaid.  However, it's a better idea to use
the link script as described later in this chapter.


    Optional Files

These files are required only in special situations.

o   cmxDbt52.obj

    This file allows the use of .DBT memo files with Comix 3.0.  By default
    Comix 3.0 will create and use .FPT memo files.

    It is usually far better to convert to .FPT files (as described in the
    Questions?/Answers section of the NG) than to limp along with .DBTs.

o   cmxFox52.obj

    This file allows the concurrent use of databases by both FoxPro and
    Comix simultaneously.  Please note that this file is only required if
    both FoxPro and Comix will be using the same databases in SHARED mode
    at the same time.

    The file formats are always compatible;  cmxFox52 simply changes the
    locking schemes so that Comix & FoxPro can share files at the same
    time.

    The default Comix (/Clipper) locking schemes are substantially superior
    to FoxPro's, so use of cmxFox52 will somewhat impair performance.

    In summary, don't use this file unless you know you need it.


Linking

    Overview

In order to use Comix, you will need to link with cmx52.lib.  For example,
suppose you have a simple test program, "TEST" and are using RTLink.  Your
link line would be:

    rtlink /stack:7168 /noe file test, cmx52 lib cmx52

Note that the stack size is 7K.  This is the maximum stack which Comix
will use.  (ClipMore users take heart, even when using ClipMore with Comix,
you will only need to set your stack size to 7168).

The /noe option suppresses duplicate symbol warnings which are otherwise
produced when you link with cmx52.obj.

Since you have linked with cmx52.obj, Comix is the default RDD when no
explicit RDD name is given.  In addition, this causes DBFNTX to not be
linked in (reducing load size).

If you want to link such that both DBFNTX and Comix are available, use the
following link line:

    rtlink /stack:7168 /noe file test lib cmx52

(test.prg will need to have the statement #include "cmx52.ch" in it).

Now, by using either the VIA clause or the dbSetDriver() function, you can
use either Comix or DBFNTX.  Comix's RDD name is "COMIX".  To explicitly
specify the use of Comix in an app that was linked as above, you would say:

    use demo via "COMIX"


    Blinker

Here is a basic Blinker link script.  This uses Comix as the default RDD and
replacement for DBFNTX:

    OUTPUT test
    STACK 7168
    BEGINAREA
        FILE test
        FILE cmx52.obj
        LIB cmx52.lib
    ENDAREA
    LIB clipper
    LIB extend
    @cmx.lnk

Please note the use of the @cmx.lnk at the end of the link script to
efficiently dynamically overlay the Comix library.

To use both Comix and DBFNTX together in the same app:

    OUTPUT test
    STACK 7168
    BEGINAREA
        FILE test
        LIB cmx52.lib
    ENDAREA
    LIB clipper
    LIB extend
    @cmx.lnk


International Ordering

International ordering is automatically handled by Comix (and
ClipMore).

If, when you link, you get an error message indicating that the symbol
"__dcmp" is an unresolved external, link with the file dcmp.obj, making
sure to place it in the root (do not dynamically overlay it for
performance reasons).


Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson