On Thu, 8 Nov 2012 10:04:47 +0200 Ralph Möritz <ralph.moer...@outlook.com> wrote:
> Re. #2, I don't really mind what ECL does with large constant strings behind > the > scenes, the point is that ECL *knows* which compiler it's using so it *could* > do whatever is > necessary such as setting *COMPILE-IN-CONSTANTS* or passing the appropriate > compiler switches > to find the ECL libs. If Franjo & the regulars don't have time to > implement this, > I'll be happy to do it myself & post a patch - Just let me know where in the > source to start looking. I also think that it might be possible to have *COMPILE-IN-CONSTANTS* automatically default to T where possible eventually. For the library paths, on ELF systems RPATH can be used (such that the runtime linker knows where to look for libraries without extra configuration) and ECL is supposed to automatically link objects with the required ECL library. Then again I unfortunately don't know for the equivalent of RPATH for Windows PECOFF here. > Re. #3, `ecl -o <executable -link <object>` works, but only after producing > the object file, which still > requires all the manual steps mentioned because `ecl -compile <lisp>` > produces a FASL file, and `ecl -o > <object> -compile <lisp>` gives the following error: (Provided > `(ext:install-c-compiler)` is in your .eclrc, > otherwise it just produces FASL output) > > LINK : fatal error LNK1149: output filename matches input filename > 'C:\Users\ralphm\Temp\src\experiments\lisp\hello-ecl\hello.obj' To avoid needing a special eclrc when using build scripts, it's also however possible to use -eval (along with -norc). For instance, in a GNUmakefile for a project I use the following rule to produce .o objects before linking them (also note the -s to produce "system" objects rather than final fasl ones): %.o: %.lisp $(ECL) -eval '(progn (setf c::*compile-in-constants* t) (pushnew :mm-ecl-standalone *features*))' -o $@ -s -compile $< I suspect that as part of that PROGN, (ext:install-c-compiler) could also be included... The complete makefile is here, but it was only tested on unix systems: http://cvs.pulsar-zone.net/cgi-bin/cvsweb.cgi/~checkout~/mmondor/mmsoftware/cl/server/GNUmakefile?content-type=text%2Fplain Juanjo is better placed than I am to definitely answer and also tests ECL on Windows, I suspect he'll reply when he's available as well. -- Matt ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_nov _______________________________________________ Ecls-list mailing list Ecls-list@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ecls-list