After "configure -with-psl", make produces only
Current machine tag is i686-pc-ubuntu10.10
and nothing is built.
After "configure -with-csl", make builds until producing
make: *** No rule to make target `/var/src/reduce-algebra-20101007/cslbuild/i686-pc-ubuntu10.10/lib/libFOX-1.6.a', needed by `csl'. Stop.
where libFOX-1.6.a is already a file in /usr/lib/, "/usr/lib/libFOX-1.6.a".
Any help? Why is nothing built with "-with-psl"? And why is the "csl" build trying to build a library file that already exists? And, most of all, any suggestion about what fix will allow the build to continue?
Also, I had to add the libfox-1.6-dev package and the libxft-dev packages from Ubuntu to get this far. A note about library dependencies would be nice in the linked build instructions at http://reduce-algebra.com/downloading.htm.
Uhm - ok - I just noticed the thread "Compiling the CSL version", which has some discussion about the FOX library. Could you please "bottom line" this for me? Are you saying to manually cd to cslbuild/*/fox and run "make"? Or, I have to run _all_ of "configure", "make" and "make install"? And "reduce" cannot use the standard "libFOX-1.6.a"?
Ok - I went back into cslbuild/i686-pc-ubuntu10.10/fox. There is no "configure" script there to run, so that cannot be done. I then ran "make" and "make install", which seems to do something useful. Then, I went back to the top-level directory, and continued with "make", which seems to be working.
There _really_ needs to be a note about this in both the online build instructions and - it would be nice - an "INSTALL" file in the package top-level directory.
Of course, I'm still wondering about the "-with-psl" build. What's up with that?
Also, running "make -n install" from the top-level produces a never-ending number of
make - -no-print-directory -n -n install install-exec-am install-data-am
which is really a bad thing, since it will just about lock-up the machine. So maybe something can be done about that.
And, you might leave a note in the build instructions about where to look for the resulting program file, after all of that. I found a working program in "cslbuild/i686-pc-ubuntu10.10/csl/", along with many "xxx.o" files. There is a directory "cslbuild/i686-pc-ubuntu10.10/bin" which "contains fox-config" and "reswrap", but no "reduce".
OK, I will answer some of the points. Firstly CSL/Reduce uses a customised version of FOX - in part because with the regular version some functions weher not virtual so overriding them was tough, and in part because at the time I was working on that there were portabiliity issues (eg to 64-bit windows) and issues regarding printing that the trunk versions of FOX did not handle the way I wanted. So the distribution contains all the FOX sources and builds that.
Now because building FOX takes an age and because it is a bit separate the Makefile dependencies are set up so it doe snot get gratuitiously rebuilt. A consequence is that if an early attenmt has partioanlly but not fully successfully build the custom FOX a subsequnet "make" might not recover well. You have all the scripts etc available to you - if you can propose a better version that will not lead to an undue number of very long worthless rebuilds of FOX please pass them across for consideration. And by the way I am wanting to move away from FOX - probably to wxWidgets where the support for Macintosh native GUI stuff exists and where the license is slightly more generous - but that change is a significant sized project for me. With wxWidgets at present I am more liable to be able to use an existing version somebody has installed provided it is new enough. I *hope*.
I tend to suggest that somebody wanting to build using CSL should use scripts/csl-sanity-check.sh first to verify that they have about the right build environment. Then if they have a messed up partial build remove the cslbuild directory, re-run ./configure -with -csl to get in a clean consistent state.
Somebody who is experienced can go into the dircetody where FOX is being compiled aand go "make install" there manually and by so doing avoid the tedium of the configure script running. Then go into the csl build directory and make manually there. There is a simplicity/tedium trade-off that will vary between people.
Re "make install" I have not really understood how to drive that via automake/autoconf yet and it is on my list. Right now you should not try it - it is a trap (but because it is unfinished, so it should not stay that way for ever).
Re documentation and guidance, I try to put notes in messages like this. the BUILDING file in the trunk mentions Xft and is where I had been trying to put notes, but guessing in advance what is needed is hard, and I have so many things I am trying to juggle. If you fely like emailing me an updated version of BUILDING (perhaps mentioning scripts/csl-sanity-check.sh) I could try checking it and upload it - and you currently are in touch with just what people need to know…???
Re PSL, that is for other sto comment on - I am mainly the CSL end of things.
I have just tried updating the BUILDING file and created a very short INSTALL file that redirects to it. NO guarantee that what I have put in is clear enough, but the previous version was 6 months out of date and as I changed it I was amazed and pleased at some of what needed updating on that account. But please check it and suggest further adjustments that might help.
If I am to find how to package things as a .deb or .rpl file I need to get to grips with "install"! But this weeks is very budy here already.