[Ecls-list] change request for MSVC for *cc-flags*

Juan Jose Garcia Ripoll lisp at arrakis.es
Mon Nov 14 02:17:50 UTC 2005


On Fri, 2005-11-11 at 23:47 -0800, fBechmann at t-online.de wrote:
> while trying an external library using the proposed asdf hack 
> (http://sourceforge.net/forum/forum.php?forum_id=504868) I always 
> receive an compile error because of the missing include 'ecl-cmp.h'. 
> this file is really not in the include path used by the compile command, 
> since this only contains '~/msvc//h', whereas the requested include file 
> is in '~/src/h'.
> 
> I guess that it should be OK and enough to add '-I\"@true_srcdir@\"/h' 
> to the 'c::*cc-flags*' as defined in compile.lsp.in. I even tried that 
> fix, re-build compile.lsp, ecl2.exe, and called nmake flatinstall - but 
> I still don't see the changed include path when starting the compile for 
> the external library.

I do not understand very well what happens in your setup. ECL is not
designed to be run from the build directory. You should first install
it. But it seems you did it.

Let us say that you do a flat install specifying the destination
	nmake flatinstall prefix=d:\ecl
Now, when installed, the file ecl-cmp.h should be copied to
$(prefix)/h/ecl-cmp.h, and the path $(prefix)/h should be part of the
compilation flags.

Now, in your email you mention ~/msvc. Is this where you install ECL? Is
ecl-cmp.h installed? If not this is a bug.

> so 2 issues:
> - is it OK to add '~/msvc/h' to the include path in compile.lsp.in? if 
> so, couldn't it go to CVS?

Definitely one cannot include fixed paths in the CVS :-/

> - why doesn't the re-compile described above help me to use the changed 
> include path?

The paths and flags in compile.lsp[.in] are only used at build time --
i.e. when constructing the ecl.exe and ecl.dll files --. The permanent
settings are part of cmpmain.lsp and cmpcfg.lsp. That is where the C/C++
compile and link flags are determined.

Juanjo






More information about the ecl-devel mailing list