www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/05/16/13:58:33

From: Maurice Lombardi <Maurice DOT Lombardi AT ujf-grenoble DOT fr>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Prashant -how to use djgpp
Date: Tue, 16 May 2000 18:31:47 +0200
Organization: Universite Joseph Fourier - Grenoble 1
Lines: 281
Message-ID: <392177F3.DD0056E4@ujf-grenoble.fr>
References: <Pine DOT LNX DOT 4 DOT 10 DOT 10005142307200 DOT 1101-100000 AT vsnl DOT net DOT in> <001901bfbdae$102ff200$da13ddcc AT lhaglund> <391F4B05 DOT 67D60D9B AT yahoo DOT com> <001301bfbdf9$7121a540$1d12ddcc AT lhaglund>
NNTP-Posting-Host: knautie.ujf-grenoble.fr
Mime-Version: 1.0
X-Trace: amazone.ujf-grenoble.fr 958495436 32264 193.54.234.27 (16 May 2000 16:43:56 GMT)
X-Complaints-To: abus AT ujf-grenoble DOT fr
NNTP-Posting-Date: 16 May 2000 16:43:56 GMT
X-Mailer: Mozilla 4.7 [fr] (Win98; U)
X-Accept-Language: fr,it,en
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Josh Haglund a écrit :
> 
> Prashant,
> 
> So if the source for Crafty was in C:/windows/desktop/Crafty
> and for Djgpp is under C:/Djgpp
> 
> what would I do from there?
> 
> I edited the Makefile underder C:/windows/desktop/Crafty/Makefile
> Here what it looks like:
> 
> # To build crafty:
> #
> #         Uncomment the sections relevant to your architecture.
> #   You may need to tune the two gcc lines below to match your compiler.
> #   You want to set up for maximum optimization, but typically you will
> #   need to experiment to see which options provide the fastest code.
> #   This is optimized for pgcc, which is a fairly current compiler.
> #
> #   The currently available targets:
> #
> #     AIX      {IBM machines running AIX}
> #     ALPHA    {DEC Alpha running OSF/1-Digital Unix}
> #     CRAY1    {any Cray-1 compatible architecture including XMP, YMP,
> #               C90, etc.}
> #     HP       {HP workstation running HP_UX operating system (unix)}
> #     LINUX    {80X86 architecture running LINUX (unix)}
> #     NT_i386  {80X86 architecture running Windows 95 or NT}
> #     NT_AXP   {DEC Alpha running Windows NT}
> #     DOS      {PC running dos/windows, using DJGPP port of gcc to compile}
> #     NEXT     {NextStep}
> #     OS/2     {IBM OS/2 warp}
> #     SGI      {SGI Workstation running Irix (SYSV/R4) Unix}
> #     SUN      {Sun SparcStation running Solaris (SYSV/R4) Unix}
> #     SUN_BSD  {Sun SparcStation running SunOS (BSD) Unix}
> #     FreeBSD  {80X86 architecture running FreeBSD (unix)}
> #
> #   The next options are optimizations inside Crafty that you will have
> #   test to see if they help.  on some machines, these will slow things
> #   by up to 10%, while on other machines these options will result in
> #   improving search speed up to 20%.  NOTE:  if you are running Linux
> #   or have a SUN Sparc-20 machine, the default configurations below
> #   will use the hand-written assembly modules.  Typical performance
> #   improvement is 33%, but this only applies to X86 machines and the
> #   Sun Sparc-20.
> #
> #   1.  opt = -DCOMPACT_ATTACKS
> #   2.  opt = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS
> #
> #   Finally, if you have a Symmetric MultiProcessor machine, you should
> #   add -DSMP to the opt definition for your make configuration, and then
> #   add -DCPUS=N where N is the number of processors (max) you will use.
> #
> #   if you want 6 man EGTB support, you will need to add -DEGTB6 to the
> #   options above.
> #
> #
> # AIX
> #target  = AIX
> #CC      = cc
> #CFLAGS  = -O2
> #CPP  = $(CC)
> #LDFLAGS =
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS
> #opt     = -DCOMPACT_ATTACKS
> 
> # ALPHA
> #target  = ALPHA
> #CC      = cc
> #Note: "-arch host" assumes you will run the binary on exactly the
> # same kind of ALPHA you compiled it on.  Omit it if you want to run
> # the same binary on several kinds of Alpha.  If you are on an early
> # EV6 that does not have the CIX instruction set extension, a compiler
> # bug (?) causes these instructions to be generated anyway.  If this
> # happens you'll see a message about "instr emulated" after starting
> # crafty; to fix it, change "-arch host" to "-arch ev56 -tune host"
> # and recompile.
> #CFLAGS  = -std -fast -O4 -pthread -newc -arch host
> #CPP  = cxx
> #LDFLAGS = $(CFLAGS)
> #LIBS    = -lpthread -lexc
> #opt     = -DSMP -DCPUS=8 -DFAST -DPOSIX
>

uncomment the lines  below DOS

> # DOS
> # target  = DOS
> # CC      = gcc
> # CFLAGS  = -fomit-frame-pointer -m486 -O3
> # CPP   = $(CC)
> # LDFLAGS =
> # opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #           -DUSE_ASSEMBLY_A -DUSE_ASSEMBLY_B
> # asm     = X86.o
> 

comment out the lines below FreeBSD

> # FreeBSD (gcc 2.6.3)
> target  = FreeBSD
> CC      = gcc
> CFLAGS  = -fomit-frame-pointer -m486 -O3 -Wall
> CPP  = $(CC)
> LDFLAGS =
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #          -DUSE_ASSEMBLY_A -DUSE_ASSEMBLY_B -DFAST
> 
> # FreeBSD (pgcc)
> #target  = FreeBSD
> #CC      = gcc
> #CFLAGS  = -pipe -D_REENTRANT -mpentium -O -Wall
> #CPP  = $(CC)
> #LDFLAGS =
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #          -DUSE_ASSEMBLY_A -DUSE_ASSEMBLY_B -DFAST
> 
> # HP
> #target  = HP
> #CC      = cc
> #OPT     = +O3 +Onolimit
> #CFLAGS  = +ESlit -Ae +w1
> #CPP  = $(CC)
> #LDFLAGS = $(OPT) $(CFLAGS)
> #opt     =
> 
> # LINUX (gcc 2.95)
> # Note: You have to uncomment exactly ONE of the `asm' lines below.
> #target  = LINUX
> #CC      = gcc
> #CPP = g++
> #CFLAGS  = -Wall -pipe -D_REENTRANT -march=i686 -O -fforce-mem \
> #          -fomit-frame-pointer -mpreferred-stack-boundary=2
> #LDFLAGS = -lpthread
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #          -DUSE_ASSEMBLY_A -DUSE_ASSEMBLY_B -DFAST -DSMP -DCPUS=4 -DDGT
> 
> # Uncomment the FIRST `asm' line for a.out systems.
> # Uncomment the SECOND `asm' line for ELF systems.
> #
> #asm     = X86-aout.o
> #asm     = X86-elf.o
> 
> # NEXT
> #target  = NEXT
> #CC      = /bin/cc
> #CFLAGS  = -O2
> #CPP  = $(CC)
> #LDFLAGS = $(CFLAGS)
> #opt     = -DCOMPACT_ATTACKS
> 
> # OS2 (emx09c)
> #  target  = OS2
> #  CC      = gcc
> #  CFLAGS  = -fomit-frame-pointer -m486 -O3 -Wall
> #  CPP     = $(CC)
> #  LDFLAGS = -Zexe -Zcrtdll -s
> #  opt = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #        -DUSE_ASSEMBLY_A -DUSE_ASSEMBLY_B -DFAST -DOS2
> #  asm     = X86.o
> 
> # SGI
> #target  = SGI
> #AS      = /bin/as
> #CC      = cc
> #AFLAGS  = -P
> #CFLAGS  = -g -32 -mips2 -cckr
> #CPP  = $(CC)
> #LDFLAGS =
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS
> #opt     =
> 
> # SUN
> #target  = SUN
> #AS      = /usr/ccs/bin/as
> #CC      = cc
> #AFLAGS  = -P
> #CPP  = $(CC)
> #CFLAGS  = -fast -xO5 -xunroll=20
> #LDFLAGS = -lpthread
> #opt     = -DCOMPACT_ATTACKS -DUSE_ATTACK_FUNCTIONS \
> #          -DUSE_ASSEMBLY_A -DSMP -DCPUS=4 -DMUTEX -DPOSIX
> #asm     = Sparc.o
> 
> # Do not change anything below this line!
> 
> opts = $(opt) -D$(target)
> 
> objects = searchr.o search.o thread.o searchmp.o repeat.o next.o nexte.o
> \
>        nextr.o history.o quiesce.o evaluate.o movgen.o make.o unmake.o
> hash.o \
>        attacks.o swap.o boolean.o utility.o valid.o probe.o book.o data.o
> \
>        drawn.o edit.o enprise.o epd.o epdglue.o init.o input.o interupt.o
> \
>        iterate.o main.o option.o output.o phase.o ponder.o preeval.o
> resign.o \
>        root.o learn.o setboard.o test.o time.o validate.o annotate.o
> \
>        analyze.o evtest.o bench.o egtb.o dgt.o $(asm)
> 
> includes = data.h chess.h
> 
> epdincludes = epd.h epddefs.h epdglue.h
> 
> eval_users = data.o evaluate.o preeval.o
> 
> crafty: $(objects)
>  $(CC) $(LDFLAGS) -o crafty $(objects) -lm  $(LIBS)
>  @rm -f X86-elf.S
>  @rm -f X86-aout.S
> 
> dgt:    dgtdrv.o
>  @cc -O -o dgt dgtdrv.c
> 
> egtb.o: egtb.cpp
>  $(CPP) -c $(CFLAGS) $(opts) egtb.cpp
> clean:
>  -rm -f *.o crafty X86-elf.X X86-aout.S
> 
> $(objects): $(includes)
> 
> $(eval_users): evaluate.h
> 
> epd.o epdglue.o option.o init.o : $(epdincludes)
> 
> c.o:
>  $(CC) $(CFLAGS) $(opts) -c $*.c
> 
> s.o:
>  $(AS) $(AFLAGS) -o $*.o $*.s
> 
> X86-aout.o:
>  sed -e 's/ALIGN/4/' X86.s > X86-aout.S
>  $(CC) -c X86-aout.S
>  @rm X86-aout.S
> 
> X86-elf.o:
>  sed -e '/ _/s// /' -e '/^_/s///' -e 's/ALIGN/16/' X86.s > X86-elf.S
>  $(CC) -c X86-elf.S
>  @rm X86-elf.S
> 
> What do I need to do now?
> Where do I type make?

cd C:\windows\desktop\Crafty
make


> C:/Djgpp/bin/make.exe?
> 
> When you say bsh*.zip, which one are you taking about?
> bsh203b, or bsh203s or bsh203d or all of them?

bsh203b, may not be mandatory, but no harm in any case.
you probably need also sed302b.zip (there are sed commands in this
makefile)

> 
> I'm running windows 95 if thats of help.
> What do I do now?
> I got all of those bsh*.zips I named above and extracted them etc..

have you set
set DJGPP=c:\djgpp\djgpp.env
PATH=.\;C:\DJGPP\BIN;%PATH%
A good place to put these lines is in a file setdjgpp.bat called from
the property/program/batch file of a specialized dos box



-- 
       Maurice Lombardi
Laboratoire de  Spectrometrie Physique,
Universite Joseph Fourier de Grenoble, BP87
38402 Saint Martin d'Heres Cedex     FRANCE
Tel: 33 (0)4 76 51 47 51
Fax: 33 (0)4 76 51 45 44
mailto:Maurice DOT Lombardi AT ujf-grenoble DOT fr

- Raw text -


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