Menu â–¾ â–´

#104 errors while compiling under cygwin64

None
closed
nobody
None
5
2020-01-03
2019-08-10
No

I was trying to compile reduce (5073) on an Asus laptop with cygwin64 installed.

The file pslbuildlog.log shows several errors while compiling the file
'reduce-algebra/trunk/csl/fox/src/FXDCNativePrinter.cpp'
but the resulting 'redpsl' file works (or seems to work) as expected.

The compilation of 'csl-reduce' fails with several errors while compiling the file
'reduce-algebra/trunk/csl/fox/src/FXDCNativePrinter.cpp'
and neither 'redcsl' nor 'redcsl.exe' is output.

In both cases the series of errors starts after the following error:

~/sw/reduce-algebra/trunk/csl/fox/include/log.h:1:1: error: expected unqualified-id before ‘.’ token

Since the compilation under macOS works without problems, I tried to compare the contents of the 'reduce-algebra/trunk/csl/fox/include/' directories. The cygwin64 directory contains 3 header files instead of 3 links which are present in the macOS directory. The 3 header files are: 'fwin.h', 'log.h' and 'termed.h'. Under cygwin64 these header files contain a single line '../../cslbase/<filename>.h'
while on the macOS version the file '<filename>.h' is a link to '../../cslbase/<filename>.h'.</filename></filename></filename>

Also the files 'fwin.cpp' and 'termed.cpp' in the directory 'reduce-algebra/trunk/csl/fox/src/' share the same problem.

The temporary solution I found is the following.

First fix the header file links

cd ~/sw/reduce-algebra/trunk/csl/fox/include/
ln -s -f ../../cslbase/fwin.h fwin.h
ln -s -f ../../cslbase/log.h log.h
ln -s -f ../../cslbase/termed.h termed.h

then fix the source file links

cd ~/sw/reduce-algebra/trunk/csl/fox/src/
ln -s -f ../../cslbase/fwin.cpp fwin.cpp
ln -s -f ../../cslbase/termed.cpp termed.cpp

and compile everything with the commands

make csl
make psl

Now I have working copies of 'redpsl', 'redcsl' and 'redcsl.exe'.

There are still several 'ambiguous overload' compiler errors in the file 'reduce-algebra/trunk/csl/cslbase/arith01.cpp', but the files 'redcsl' and 'redcsl.exe' seem to work as expected.

Please find attached the cslbuildlog file.

Sincerely Yours
Marco Ferraris

1 Attachments

Discussion

  • Arthur Norman

    Arthur Norman - 2020-01-03
    • status: open --> closed
    • Group: -->
     
  • Arthur Norman

    Arthur Norman - 2020-01-03

    At least on the platforms I have tried the code builds these days. I ough to look at the ambiguous overload stuff more carefully, but the machine-generated C++ in u01.cpp to u60.cpp doe snot have to be very human readable to do what it needs to, and if the ambiguity gets resolved in a sane way there is not too much short term damage!

     

Log in to post a comment.

MongoDB Logo MongoDB