[Ecls-list] MinGW build fails with '--with-system-gmp' (and other queries)
marc daya
marc.daya+ecl at gmail.com
Mon Jul 30 13:38:22 UTC 2007
Greetings all,
In trying to build ecl from the CVS sources
(http://common-lisp.net/cgi-bin/viewcvs.cgi/root.tar.gz?root=ecl&view=tar),
and I have a couple of questions:
First, at a couple of points during the compile I see the following:
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/c/_/pvt/tmp/ecl-cvs/ecl/ecl/src/c/main.d main.c ; else ./dpp.exe
/c/_/pvt/tmp/ecl-cvs/ecl/ecl/src/c/main.d main.c ; fi
dpp: c:/_/pvt/tmp/ecl-cvs/ecl/ecl/src/c/main.d -> main.c
Unknown symbol: mp::*current-process*
Unknown symbol: mp::+load-compile-lock+
Unknown symbol: mp::+load-compile-lock+
Unknown symbol: si::*record-source-pathname-p*
There are similar notices for instance.c, typespec.c, assignment.c, load.c,
ffi.c; mostly just referring to 'mp::+load-compile-lock+'. Should I be
concerned about these? Does this point to somethat that is likely to cause
problems later, or can I safely ignore them?
Second, more seriously, I have enountered the following error after the
lisp core has booted:
;;; gcc -I"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/c" -g -O2
-I/usr/local/include -fstrict-aliasing -Dmingw32
-I"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/src/c" -O
"-Ic:/_/pvt/tmp/ecl-cvs/ecl/ecl/build" -w -c
"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c" -o
"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.o"
In file included from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl.h:35,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl-cmp.h:16,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c:2:
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/config.h:33:17: gmp.h: No
such file or directory
In file included from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl.h:55,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl-cmp.h:16,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c:2:
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/object.h:122: error: syntax
error before "mpz_t"
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/object.h:537: error: field
`big' has incomplete type
In file included from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl.h:57,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/ecl/ecl-cmp.h:16,
from c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c:2:
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/c/ecl/external.h:92: error:
syntax error before "mp_limb_t"
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/c/ecl/external.h:102: error:
syntax error before '}' token
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/c/ecl/external.h:308: error:
syntax error before "hi"
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c: In function `LC1dolist':
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c:41: error: invalid
use of undefined type `struct cl_env_struct'
... *snip* ... (32 lines)
c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c:395: error: invalid
use of undefined type `struct cl_env_struct'
;;; The C compiler failed to compile the intermediate file.
Broken at TOP-LEVEL.No restarts available.
Top level.
I only see this having configured with '--with-system-gmp':
./configure --prefix=/usr/local --with-threads --enable-shared
--with-system-gmp --with-gmp-prefix=/usr/local
gmp.h is present in /usr/local/include, and libgmp.a in /usr/local/lib, and
configure seems happy with the locations:
checking for __gmpz_init in -lgmp... yes
If I run the 'gcc' invocation on its own, that
is:
$ cd build && gcc -I"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/c" -g -O2
-I/usr/local/include -fstrict-aliasing -Dmingw32
-I"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/src/c" -O
"-Ic:/_/pvt/tmp/ecl-cvs/ecl/ecl/build" -w -c
"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.c" -o
"c:/_/pvt/tmp/ecl-cvs/ecl/ecl/build/lsp/export.o"
it completes without errors.
I'm building using MinGW:
$ uname -a
MINGW32_NT-5.1 NBMNDAYA 1.0.10(0.46/3/2) 2004-03-15 07:17 i686 unknown
$ gcc --version
gcc.exe (GCC) 3.4.2 (mingw-special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Without '--with-system-gmp' everything builds just fine. Is there
something that I've overlooked?
Thanks,
.marc
--
I pity the poor shades confined to the Euclidean prison that is sanity.
--- Amadeus Arkham: 'Arkham Asylum'
More information about the ecl-devel
mailing list