www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/09/04/14:42:44

Message-Id: <199809041842.OAA15284@delorie.com>
Comments: Authenticated sender is <mert0407 AT sable DOT ox DOT ac DOT uk>
From: "George Foot" <george DOT foot AT merton DOT oxford DOT ac DOT uk>
To: Arthur <arfa AT clara DOT net>
Date: Fri, 4 Sep 1998 19:40:41 +0000
MIME-Version: 1.0
Subject: RE: Libraries
Reply-to: mert0407 AT sable DOT ox DOT ac DOT uk
CC: djgpp AT delorie DOT com

On  4 Sep 98 at 11:38, Arthur wrote:

> Did you move liballeg.a from the lib folder? If so, put it back. If not,
> you've got Allegro in the wrong place. The folder in which you extract
> Allegro must be a subdirectory of your DJGPP directory (The Allegro
> directory should be in the same place as the bin, include, lib etc.
> directories).

That's not true; it doesn't matter where you unzip Allegro.  To
determine where it should install the library, header file and info
file it uses the DJDIR environment variable which (when running a
djgpp program) should always point to djgpp's directory, unless your
installation is broken.  Note that DJDIR is set automatically -- you
don't need to set it yourself, and if you do then your setting will
just be ignored.

This could still be the reason why Vadim's Allegro didn't install
properly.  Because Allegro works in this way, it won't be able to
install if you don't have write access to the drive where you
installed DJGPP.  If it's a network drive you need to get your
administrator to install Allegro, or arrange a local djgpp directory
where you can install files just for yourself.

If you need to do this, create a local djgpp directory somewhere you
can write, with `include' and `lib' subdirectories.  In your
environment set the following, if they are not already set:

    CPLUS_INCLUDE_PATH=c:/locdjgpp/include
    C_INCLUDE_PATH=c:/locdjgpp/include
    LIBRARY_PATH=c:/locdjgpp/lib
    INFOPATH=c:/locdjgpp/info

replacing "c:/locdjgpp" with the name of your local djgpp directory if 
it's not "c:/locdjgpp".

If any of the above were already set then you should find out who set 
them and why, before continuing.

Now the compiler should look in the named directories in addition to
looking in the standard ones.  You need to arrange for your libraries
to install to the local directory tree.  In Allegro's case you could
just make as usual, ignore the error message at the end, and copy the
files across by hand.  Or you can change the following lines in the
makefile:

    LIBDEST = $(DJDIR)/lib/liballeg.a
    INCDEST = $(DJDIR)/include/allegro.h
    DOCDEST = $(DJDIR)/info/allegro.inf

to this:

    TARGET_DJDIR = $(DJDIR)
    LIBDEST = $(TARGET_DJDIR)/lib/liballeg.a
    INCDEST = $(TARGET_DJDIR)/include/allegro.h
    DOCDEST = $(TARGET_DJDIR)/info/allegro.inf

Then the target will default to the real djgpp tree, but you can 
override it like this:

    make TARGET_DJDIR=c:/locdjgpp

replacing "c:/locdjgpp" with the real path of course.

Note that I've never done this over a proper network; however, I set
it up over a peer-to-peer network once, and it worked fine.

-- 
george DOT foot AT merton DOT oxford DOT ac DOT uk

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019