Bill, I was giving a tutorial on the difference between two different obscure techniques that could be used to get Axiom running on a new system. I'm not advocating either technique.
> > Axiom was ported to the Zaurus handheld using cross-compilation. > > Camm does it in the Debian setup. > > No, I don't think that is true. You're right. I'm wrong. > There are two methods generally used, CROSS-COMPILATION and > CROSS-MOUNTING. > > I have never heard of "cross-mounting" used in this context. Cross-mounting was the primary way to build axiom. A Zaurus handheld contains more processor speed and memory than the systems we used to use. Storing the SRC and INT directories on the target machine would cause them to run out of disk space. > > CROSS-MOUNTING is easier if the target system has the tools and > > Tim, that sounds like nonsense. Anyone can mount source directories > located on another machine running another operating system. You can > use NFS, or Samba or whatever. This has nothing to do with cross- > compilation. ummm, that's why I put it in a separate paragraph named CROSS-MOUNTING. yes, it has nothing to do with CROSS-COMPILATION. > Maybe this strategy was interesting once-upon-a-time but with > the machines that we have available today I doubt that there is > much advantage to this. Quite true. Which is why I now copy the sources to the target machine. I'm pointing out that historically Axiom built on many target systems which had the speed of your toaster and the disk space of your credit card using this technique. It explains why Axiom is structured the way it is. A full, from-scratch Axiom build used to take 3 weeks. Two days on a Zaurus would have been a miracle. > But I still do not understand how you can talk about cross- > compilation and GCL. When GCL compiles some lisp source code > it produces intermediate C code which, yes could in principle > be compiled for another architecture, but then it immediately > attempts to link the generated object code into the running > GCL image. If you are attempting cross-compilation this is > not possible because the running GCL image is not compatible > with the object code produced by gcc. > > What am I missing? Not much that I can see. Yes, you could build a cross-compiled image of Axiom and you could set the system so it does not try to compile things but you couldn't use it for algebra development without a lot of hand-manipulation (e.g. running the debugsys image in which everything is interpreted, hand-loading the interpreted form of the compiled algebra, etc). I'm at a loss about why the cross-compilation issue was raised. > > The advantage of CROSS-MOUNTING is that you are building on > > the final target and can use all of the libraries, includes, > > and tools. The disadvantage is that you can't do this if the > > target does not have the horsepower. > > As far as I can see, this is irrelevant to the issue of cross- > compilation. Historically it wasn't. On systems with 10 gig hard drives and 4 Meg of memory (a VERY big system then) you didn't need to do this. But on systems with 10 meg hard drives and 640k of memory it was a challenge. The compilers did not include a cross-compile target so it was not possible to build on anything but the target systems. Now it's completely worthless, as you point out. > > > > Which method you use is determined by the resources of the > > target. > > > > If you build the binaries on the target this is not cross- > compilation. ummm, again, I don't believe I said it was.... I was just giving a tutorial about the two techniques. I don't recommend either one. t _______________________________________________ Axiom-developer mailing list Axiom-developer@nongnu.org http://lists.nongnu.org/mailman/listinfo/axiom-developer