[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gcl-devel] Re: [Maxima] Compilation problems with latest maxima

From: Vadim V. Zhytnikov
Subject: Re: [Gcl-devel] Re: [Maxima] Compilation problems with latest maxima
Date: Sun, 29 Sep 2002 15:28:24 +0300
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.0.0) Gecko/20020526

Hi Camm!

Actually you are not quite right about cmpinclude.h.
In general this file it is not required by GCL.
GCL has built-in variable compiler::*cmpinclude-string*
which holds text of cmpinclude.h.  If this variable is
not NIL then compiler inserts it explicitly
in every foo.c generated by (compile-file "foo.lisp").
And only if compiler::*cmpinclude-string* is NIL then
compiler inserts usual #include and you _must_ have
cmpinclude.h in the include path.

Older version of GCL 2.5.0 worked fine to me without
any cmpinclude.h installed. But somewhere in August I
also start getting the problem with building
Maxima with GCL CVS.  If I take sloop.lisp
from maxima/src directory, start gcl
and make (compile-file "sloop.lisp")
then everything goes just fine.  I see that
very large sloop.c explicitly containing
cmpinclude.h text in the beginning.
But due to unknown reason if I try to
build Maxima with the same GCL then
sloop.c contains #include <cmpinclude.h>
I don't know why yet.

Camm Maguire пишет:
> Greetings!
> 1) cmpinclude.h is generated by the gcl build process.  If you then do
>    'make install', it should be installed along with the other files
>    where your compiler can find it.
> 2) old versions are not likely to have the same function/variable
>    definitions in all cases, as cvs gcl is under development.
> 3) If you don't want to bother installing libbfd et. al., gcl now
>    ships with its own local version.  Check out the options with
>    ../configure --help.  --disable-statsysbfd disables the search for
>    a static bfd lib for relocations.  --enable-locbfd uses the local
>    bfd source.  There is also --enable-custreloc for the old hand
>    tuned version, --enable-dynsysbfd for a shared bfd lib on your
>    system, and --enable-dlopen.  Likewise, an external gmp lib can be
>    used with --enable-dynsysgmp.
> 4) The idea is that you *install* your gcl build, then build maxima
>    without reference to the gcl source tree.  If you don't want to do
>    that, you can still direct the maxima build to the right places in
>    the (built) gcl source tree with 'export PATH=<gcl source>bin:$PATH
>    ; export C_INCLUDE_PATH=<gcl source/h'.
> Take care,
> Valerij Pipin <"address@hidden, pip"@iszf.irk.ru> writes:
>>Something is going wrong for me... I did not find "cmpinclude.h" nether in the latest gcl-cvs nor in gcl-2.4.3.tgz. >>Fortunately, I have the copy of the old version of cvs-gcl made in August where I found this cmpinclude.h. >>I put it in /usr/include and tried to compile maxima. The number of errors is much less then before but still
>>I have
>>Compiling sloop.lisp.
>>; (DEFUN FIRST-SLOOP-FOR ...) is being compiled.
>>;; The variable *LOOP-INCREMENT* is undefined.
>>;; The compiler will assume this variable is a global.
>>End of Pass 1.
>>End of Pass 2.
>>sloop.c: In function `L30':
>>sloop.c:2088: called object is not a function
>>sloop.c: In function `L65':
>>sloop.c:4964: called object is not a function
>>sloop.c:4978: called object is not a function
>>Error: (SYSTEM "(cd binary-gcl/ ;kgcc -pipe -fwritable-strings -DVOL=volatile -I/usr/src/RPM/BUILD/gcl-2.5.0/o -fsigned-char -Wall -O4 -c sloop.c -w)") returned a non-zero value 0.
>>Fast links are on: do (si::use-fast-links nil) for debugging
>>Error signalled by UNLESS.
>>Broken at CERROR.  Type :H for Help.
>>PS I've succefully build the latest cvs-gcl on my linux-duron after updating the binutils libbfd and liberty to the latest versions.
>>On 20 Sep 2002 20:35:32 -0400
>>Camm Maguire <address@hidden> wrote:
>>>Greetings!  The gcl/maxima build has been reworked so that one does
>>>not need the source tree any longer to build maxima.  this of course
>>>then assumes that one has installed the gcl package.  Doing so
>>>installs the cmpinclude.h file in your system include directory.  If
>>>you want to build maxima from an uninstalled gcl source tree, just set
>>>the C_INCLUDE_PATH environment variable to <gcl tree path>/h.
>>>Gcl issues to address@hidden, please.  Almost missed this one.
>>>take care,
>>>Valerij Pipin <address@hidden> writes:
>>>>On 19 Sep 2002 14:34:41 -0500
>>>>Jay Belanger <address@hidden> wrote:
>>>>>When I try compiling the latest cvs Maxima with the latest cvs gcl, I
>>>>>get an error complaining about a missing file cmpinclude.h.
>>>>>(The error message is at the end of this letter.)
>>>>>I get the same problem with gcl-2.4.3, but not with an earlier cvs
>>>>>maxima I was using, and not with clisp.
>>>>>(Everything was compiled with gcc-3.2.)
>>>>>Is this a local problem, or has anyone else come across it?
>>>>Yes, I confirm this. I have the same error messages and there were no such errors with clisp and cmucl.
>>>>In addition, I tried gcc-2.96 and kgcc with the same effect.
>>>>I have another problem with building the latest cvs-gcl itself. Though I compiled it on Linux-P3, >>>>I was not able to do it on Linux-Duron750. The problem is with bfd routines. >>>>The error remains if I change the configure options to --disable-bfd --host=i586-linux-gnu.
>>>>The building gcl-2.4.3 is OK on both systems.
>>>>>~ $ cd maxima
>>>>>~/maxima $ ./bootstrap
>>>>>+ aclocal
>>>>>+ automake --add-missing --copy
>>>>>configure.in: installing `./install-sh'
>>>>>configure.in: installing `./mkinstalldirs'
>>>>>configure.in: installing `./missing'
>>>>>configure.in:6: installing `./config.guess'
>>>>>configure.in:6: installing `./config.sub'
>>>>>+ autoconf
>>>>>~/maxima $ ./configure --enable-gcl
>>>>>[Much deleted, no complaints from configure]
>>>>>GCL enabled. Executable name gcl
>>>>>default lisp: gcl
>>>>>~/maxima $ make
>>>>>Making all in src
>>>>>make[1]: Entering directory `/home/belanger/maxima/src'
>>>>>test -d binary-gcl || mkdir binary-gcl
>>>>>test -d binary-gcl/numerical || mkdir binary-gcl/numerical
>>>>>test -d binary-gcl/numerical/slatec || mkdir binary-gcl/numerical/slatec
>>>>>LISPTYPE=gcl ; export LISPTYPE ;\
>>>>>GCL=gcl ; export GCL ;\
>>>>>/home/belanger/maxima/lisp-utils/maxima-run-lisp \
>>>>> -x '(load "/home/belanger/maxima/lisp-utils/defsystem.lisp")(funcall (intern "OPERATE-ON-SYSTEM" :mk) "maxima" :compile :verbose t)' && \
>>>>>        /home/belanger/maxima/lisp-utils/maxima-run-lisp \
>>>>> -x '(load "/home/belanger/maxima/lisp-utils/defsystem.lisp")(funcall (intern "OPERATE-ON-SYSTEM" :mk) "maxima" :load :verbose t)' \
>>>>>         -d binary-gcl/maxima
>>>>>gcl -batch -eval (let ((argv '())) (declare (ignorable argv)) (progn (load "/home/belanger/maxima/lisp-utils/defsystem.lisp")(funcall (intern "OPERATE-ON-SYSTEM" :mk) "maxima" :compile :verbose t)) (values))
>>>>>Warning: REQUIRE is being redefined.
>>>>>;  - Compiling defsystem "maxima"
>>>>>;    - Loading module "package"
>>>>>;      - Loading source file "maxima-package.lisp"
>>>>>Loading maxima-package.lisp
>>>>>Finished loading maxima-package.lisp
>>>>>;    - Compiling module "info"
>>>>>;    - Compiling module "sloop"
>>>>>;      - Compiling source file "sloop.lisp"
>>>>>Compiling sloop.lisp.
>>>>>; (DEFUN FIRST-SLOOP-FOR ...) is being compiled.
>>>>>;; The variable *LOOP-INCREMENT* is undefined.
>>>>>;; The compiler will assume this variable is a global.
>>>>>End of Pass 1.
>>>>>End of Pass 2.
>>>>>sloop.c:2:24: cmpinclude.h: No such file or directory
>>>>>sloop.c: In function `init_sloop':
>>>>>sloop.c:4: `object' undeclared (first use in this function)
>>>>>sloop.c:4: (Each undeclared identifier is reported only once
>>>>>sloop.c:4: for each function it appears in.)
>>>>>sloop.c:4: parse error before ')' token
>>>>>[Many many pages of similar errors]
>>>>>Maxima mailing list
>>>>Maxima mailing list
>>>Camm Maguire                                                address@hidden
>>>"The earth is but one country, and mankind its citizens." -- Baha'u'llah
>>>Maxima mailing list

      Vadim V. Zhytnikov


reply via email to

[Prev in Thread] Current Thread [Next in Thread]