David.Matthews@prolingua.co.uk wrote:
I have built a new release for Poly/ML and installed it on the sourceforge site at http://sourceforge.net/projects/polyml . There is a database for each of the i386, PPC and Sparc architectures and sources for the driver, compiler and Basis library. As before, you need the driver plus the appropriate database.
I am about to try this with Isabelle2005. Concerning Solaris: How do you actually compile the poly driver? Using gcc 3.2.2 produces the following error:
gcc -DGCC -DSPARC -DSOLARIS -DSOLARIS2 -DBIGHEAP -c -o sparc_assembly.o sparc_assembly.S sparc_assembly.S: Assembler messages: sparc_assembly.S:1782: Error: Illegal operands make[1]: *** [sparc_assembly.o] Error 1 make[1]: Leaving directory `/export/T3/proj/polyml/polyml-4.1.4-test/driver' make: *** [none] Error 2
Note that the same problem occurs with the 4.1.3 driver.
Makarius
Makarius wrote:
I am about to try this with Isabelle2005. Concerning Solaris: How do you actually compile the poly driver? Using gcc 3.2.2 produces the following error:
gcc -DGCC -DSPARC -DSOLARIS -DSOLARIS2 -DBIGHEAP -c -o sparc_assembly.o sparc_assembly.S sparc_assembly.S: Assembler messages: sparc_assembly.S:1782: Error: Illegal operands make[1]: *** [sparc_assembly.o] Error 1 make[1]: Leaving directory `/export/T3/proj/polyml/polyml-4.1.4-test/driver' make: *** [none] Error 2
Note that the same problem occurs with the 4.1.3 driver.
I built the Sparc system on Solaris 8 with gcc 2.95.2 . My Sparc machine is fairly old and I haven't attempted to update the operating system. Are many people using Solaris either on Sparcs or I386? Which version?
I did have a look at line 1782 and noticed that the argument operands were reversed compared to the other instructions. I've changed them and updated CVS on Sourceforge. It looks as though gcc 2.95.2 didn't care but gcc 3.2.2 does. Give Sourceforge a while to update the anonymous CVS copy and let me know if this now works. If so I'll update the driver source file.
David.