bug-prolog
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MSVC build in Win95/Cygwin - changes to 1.2.1 source required


From: Gerald W. Shapiro
Subject: Re: MSVC build in Win95/Cygwin - changes to 1.2.1 source required
Date: Fri, 21 Sep 2001 14:52:33 -0400 (EDT)

On Thu, 20 Sep 2001, Daniel Diaz wrote:
> 1)  could you try the last version available at the main ftp site please ?

I would be happy to try. Are there steps I can take to build 1.2.7 without
disturbing the 1.2.1 build?  doe s"in-place" option do this?

> 2) I have compiled it recently with MSVC (6.0 Prof) and ti worked fine. Which
> MSVC version do you use ? Can you give more info about the problems you
> encountered please ?

My MSVC is ver 6.0 ... not sure about the sub-category (Prof?). The
command line compiler reports version 12.00.8168 . THe most recent include
files are dated 6/19/98

See below for more details on the errors. The information is from my
(limited) human memory. Also, you should know, I built with sockets
disabled.

> thank you for your contribution

You're welcome. Thanks for the nice prolog implementation!!

> > 1. Delete the definition of stat in src\EnginePl\arch_dep.h
> > (It is already defined in an MSVC header)

stat is defined as the same as _stat in the arch_dep.h My MSVC has an
include which defines stat. It complains about duplicate definition of
stat, and compile stops with error.

> > 2. Line 154 of cpp_headers.c add a do-nothing line after #endif (I
> > added
> > i=0 ; ) to stop msvc from complaining about a missing semi-colon.

After pre-processing, the lines in question should make a legitimate c
statement, but my compiler complains about a missing semi-colon, and then
stops. Adding a line that ends with a semi-colon ( c/}/ i = 0 ; }/
) satisfies my compiler.

> > 3. In src/EnginePl/Makefile.in replace $(ROOT_DIR)/src/$$i with ../$$i
> > (windows has trouble with the full cygwin path, but relative paths are
> > ok)

This is a cygwin problem. It can be resolved by using mount to help Cygwin
determine the DOS path from the Unix path, but the change suggested also
fixes the problem, and should also work on true Unix machines, n'est pas?

> > 4. In src/Fd2c/compile.pl , line 511, change reg_alloc to reg_alloc.pl

My build will not add the .pl to the file name. It reports that reg_alloc
is not found. It could be that I have perl installed, and that
installation associates .pl with perl files... who knows?

NOTE: You must understand the thinking of a Windows user. Unlike Unix,
which seeks to provide every user with full access to the OS, Windows is
designed to hide things from you. So when you use windows, when something
does not work, you find another way to do it that does work. You do not
debug windows or (commercial) windows software, you live with its
weaknesses and errors, and debug your interactions with it. So when I find
that my windows compile of gprolog does not add .pl as the Cygwin compile
did, I just shrug and add .pl myself. As to why this happens, it is
windows, who knows?

Gerald




reply via email to

[Prev in Thread] Current Thread [Next in Thread]