Page 1 of 1

Require CMP in ECL

Posted: Tue Jul 07, 2009 11:13 pm
by Harnon
I'm trying to load the asdf which comes with ecl in the contrib folder.
At the very end, it has a modification which has the code (require 'cmp).
However, I can't seem to find the cmp.lsp file anywhere within the distribution.
I tried commenting out this line and loading, but when attempting to test asdf it signals an error somewhere along the lines of it can't find something which has to do with cmp.

Does anyone know where cmp is???
Thx 8-)

Re: Require CMP in ECL

Posted: Wed Jul 08, 2009 1:36 pm
by duncan
Harnon wrote:I'm trying to load the asdf which comes with ecl in the contrib folder.
At the very end, it has a modification which has the code (require 'cmp).
However, I can't seem to find the cmp.lsp file anywhere within the distribution.
I tried commenting out this line and loading, but when attempting to test asdf it signals an error somewhere along the lines of it can't find something which has to do with cmp.

Does anyone know where cmp is???
I don't think there is a single cmp.lsp file. There should be a cmp.fas file though- I think this is built from a bunch of source files, none of which are named cmp.lsp. In my installation on Linux it's at the top level of my ecl install. How did you build/install ecl, and on what platform? If you have the source distribution you can get an idea of how things get built by looking at compile.lsp (and the Makefiles, of course.)

Re: Require CMP in ECL

Posted: Wed Jul 08, 2009 4:36 pm
by Harnon
I'm using microsoft visual studio on windows vista 32 bit. I'm following the instructions on the ecl manual which include saying
nmake, then nmake -install

If there's anything extra i need to do to build this fas file, i didn't do it.
It's also not building any of the contribution files included.
Maybe it has something to do with the makefile.
Do i need to include a directory file after the = signs (like ECL_CMP =) for the contribs in the following?
Here's (I think) the relevant part:


# =============================================================
# ECL configuration
# <BEGIN>

SHORT_SITE_NAME =
LONG_SITE_NAME =
ECL_VERSION = 9.4.1
ECL_VERSION_NUMBER= 90401
ARCHITECTURE = PENTIUM4
SOFTWARE_TYPE = NT
SOFTWARE_VERSION = 5.0
THEHOST = win32

# Define here the processor type to compile GMP library
# with maximum optimization. Possible values are:
# gc -> generic implementation
# p0 -> Pentium processor
# p3 -> Pentium III processor
# p4 -> Pentium IV processor
GMP_TYPE = gc

# Set it to non-empty to include Win32 thread support
ECL_THREADS =

# Set it to non-empty to include support for Unicode characters
ECL_UNICODE =

# Set it to non-empty to enable Win32 debug support
#ECL_DEBUG = 1

# Add the extensions to include in the build process. Comment any
# of the following lines to remove a feature from the build process
# LISP->C compiled
ECL_CMP =
# ASDF support
ECL_ASDF =
# TCP support
ECL_SOCKETS =
# X Windows support
# ECL_CLX = 1
# Regression Tests support
ECL_RT =
# Defsystem support
ECL_DEFSYS =
# Profiling
ECL_PROFILE =

# <END> (ECL configuration)

Re: Require CMP in ECL

Posted: Wed Jul 08, 2009 5:31 pm
by Harnon
Yay ! Problem Solved. The problem (drum rolls please):
The Visual Studio 2008 Command Prompt doesn't like spaces in its pathname, in other words C:/Program Files/ = baddbadbadbad :o :o :o
Just download ecl again (do this, because files have been added to your directory if you've already compiled which will mess things up) and then do the nmake
thing with the ecl in a pathname which doesn't have a space in it.

Wew! :mrgreen: :mrgreen: :mrgreen:

Re: Require CMP in ECL

Posted: Thu Jul 09, 2009 1:21 pm
by findinglisp
Harnon wrote:The Visual Studio 2008 Command Prompt doesn't like spaces in its pathname, in other words C:/Program Files/ = baddbadbadbad :o :o :o
I use Windows every day as my primary desktop at work, but I have to say that it and most other Microsoft programs are tremendously brain damaged. The amount of crap like this that you find and have to work around is truly staggering.

That said, glad you found the answer. :)