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:
[01m[K~/sw/reduce-algebra/trunk/csl/fox/include/log.h:1:1:[m[K [01;31m[Kerror: [m[Kexpected unqualified-id before ‘[01m[K.[m[K’ 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
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!