[ Top | Up | Prev | Next | Map | Index ]

# Analog 5.22: Starting to use analog on other platforms

Here is the really short summary:

1. Edit `anlghead.h` and compile, if necessary
2. Edit `analog.cfg`
3. Run analog

Many platforms have a precompiled version of analog available. Before compiling analog, have a look at the analog home page to see if yours does.

If you're not using one of the platforms for which a precompiled version is available, you'll have to compile your own version from the source. But don't worry -- it's written in standard C throughout, so it will compile out of the box on most platforms. (The source code is the same for all platforms.)

First, change to the `src/` directory.

Then look at the file anlghead.h, and see if there's anything you want to edit.

When you have done that, you need to compile the program. How to do that depends on which operating system you're using.

Compiling under Unix. First edit anlghead.h as described above. Then just type

    make

within the `src/` directory to compile the program. On most systems, that will be sufficient, and the compiled program should appear in the parent directory. If it fails to compile, have a look in the Makefile to see if there's anything that you need to change to suit your configuration, and try again. It says in that file what to do. In particular, Solaris 2 (SunOS 5) users need to change the `LIBS=` line.

(Experts can pass some arguments in on the `make` command line instead of by editing `anlghead.h`: e.g.

    make DEFS='-DLANGDIR=\"/usr/etc/apache/analog/lang/\"'

This is useful if you have a script to compile analog.)

If you haven't got gcc, you will need to change the compiler - try acc or cc instead. If it still doesn't compile, try `DEFS=-DNODNS` to ignore the DNS lookup code.

There is a known problem with HP-UX 10 and some versions of gcc. If it complains about an error in the `<sys/stat.h>` library, you need to upgrade to gcc version 2.7.2.3 or later, or use HP's cc compiler. HP's compiler is not an ANSI C compiler by default, so you need to specify `-Ae` in the `CFLAGS` to tell the compiler to use ANSI C.

SunOS 4's cc and gcc don't have the necessary header files for ANSI C. If you have the ANSI C compiler acc, use that. Otherwise use the `DEFS` given in the Makefile.

SunOS 5 users need to change the `LIBS=` line in the Makefile. Also, this OS sometimes seems to have a broken `strcmp()` function. If you get an "illegal instruction" error when running analog, compile it with the `-DNEED_STRCMP` in the `DEFS=` line.

Compiling under OpenVMS. You can find OpenVMS build scripts within the `src/build` directory. Unzip them within the `src` directory. Then to build Analog interactively from the command line, type

    $ @ Build_Analog

or to submit the Build_Analog procedure to a batch queue, type

    $ Submit /NoPrint /Keep Batch.com

The command procedure will use MMS (or MMK) if it is available, otherwise it will compile everything from raw command procedures.

Compiling under Acorn RiscOS. The Makefile can be found in the `src/build` directly, although at this point it has not been updated for version 5 of analog. You will have to make directories called `C`, `H` and `O`, and move the sources files into the appropriate directories: e.g., `alias.c` must be renamed `C.alias`. And you will find that there are some filenames in the header file `anlghead.h` that you want to change to fit into the RiscOS directory structure.

Compiling under OS/2. To compile analog for OS/2, you will need the EMX package. You should edit the Makefile to have `OS=OS2` and `LIBS=-lsocket`. Then after editing anlghead.h and running Make, you need to run the command

    EMXBIND -b ANALOG

to generate the analog.exe executable.

After you've compiled the program, leave the `src/` directory and then just type

    analog

to run the program. (Or `./analog` if for some reason `.` isn't in your `$PATH`.)

You can configure analog by putting commands in the configuration file, which is called `analog.cfg` by default. Two commands you will need straight away are

    LOGFILE logfilename      # to set where your logfile lives
    OUTFILE outputfile.html  # to send the output to a file instead of the screen

The logfile must be stored locally -- analog won't use FTP or HTTP to fetch it from the internet. There's a sample logfile supplied with the program. For help in interpreting the output, see What the results mean.

There are already some configuration commands to get you started in the configuration file, but there are lots of others available. You can find the most common ones in the section on basic commands later in the Readme, and you can read about all of them in the section on customising analog. There are also some sample configuration files in the examples directory.

There is one other way to give options to analog, via command line arguments, given on the command line after the program name. These are just shortcuts for configuration file commands.

Go to the analog home page.

Need help with analog? Use the analog-help mailing list.

[ Top | Up | Prev | Next | Map | Index ]