#8269: cygwin: maxima does not build on cygwin, possibly due to ECL bug.
-----------------------------------------------+----------------------------
Reporter: was | Owner: tbd
Type: defect | Status: new
Priority: major | Milestone: sage-4.3.3
Component: cygwin | Keywords:
Author: Juan Jose Garcia-Ripoll, wstein | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------------------------+----------------------------
Comment(by was):
Juan-Jose had the following suggestion:
{{{
It is no wonder Maxima does not build in Cygwin. Someone had introduced,
who knows why, different build commands for that platform in
maxima.system. The offending function looks as follows
(maxima/src/maxima.system)
#+ecl
(defun build-maxima-lib ()
(labels ((list-all-objects (module)
(if (eql (mk::component-type module) :file)
(list (mk::component-full-pathname module :binary))
(apply #'append (mapcar #'list-all-objects (mk::component-
components module))))))
(let* ((files (list-all-objects (mk:find-system 'maxima))))
#+msvc
(progn
(c::build-static-library "binary-ecl/maxima-lib" :lisp-files
(print files))
(let ((c::*ld-format* (concatenate 'string c::*ld-format* "
/LIBPATH:binary-ecl")))
(c::build-fasl "binary-ecl/maxima" :lisp-files '(maxima-lib))))
#+cygwin
(c::build-fasl "binary-ecl/maxima" :lisp-files files)
#-(or cygwin msvc)
(let ((obj (mapcar #'(lambda (p)
;; Convert dir/foo.fas to dir/foo.o
(make-pathname :type "o" :defaults p))
files)))
[.... ]
It is immediately obvious that the code for cygwin is too short to do
anything useful. A possible fix is to remove the line #+cygwin and the
following line and change #-(or cygwin msvc) to #-msvc However I can not
guarantee that there are no other problems left.
Please note that this is not directly related to ECL.
Juanjo
}}}
I tried this with the following new spkg:
http://wstein.org/home/wstein/ports/cygwin/maxima-5.20.1.p1.spkg
and it now fails as follows:
{{{
;;; Note: Invoking external command:
;;; gcc "-I/home/wstein/build/sage-4.3.3.alpha0/local/include/"
-I/home/wstein/build/sage-4.3.3.alpha0/local/include -O2 -g -Wall
-Dcygwin -O -w -c "/cygdrive/c/WINDOWS/TEMP/ECLINIT5NW89S.c" -o
"/cygdrive/c/WINDOWS/TEMP/ECLINIT5NW89S.o"
gcc: /cygdrive/c/WINDOWS/TEMP/ECLINIT5NW89S.o: No such file or directory
An error occurred during initialization:
(SYSTEM "gcc -o
\"/home/wstein/build/sage-4.3.3.alpha0/spkg/build/maxima-5.20.1.p1/src/src
/binary-ecl/numerical/slatec/dbesj0.fas\"
-L\"/home/wstein/build/sage-4.3.3.alpha0/local/lib/\"
\"/cygdrive/c/WINDOWS/TEMP/ECLINIT5NW89S.o\"
\"/home/wstein/build/sage-4.3.3.alpha0/spkg/build/maxima-5.20.1.p1/src/src
/binary-ecl/numerical/slatec/dbesj0.o\" -shared
-L/home/wstein/build/sage-4.3.3.alpha0/local/lib
-L/home/wstein/build/sage-4.3.3.alpha0/local/lib -lecl -lgmp -lgc -lm
") returned non-zero value 1.
;;; Note: Invoking external command:
;;; gcc -o
"/home/wstein/build/sage-4.3.3.alpha0/spkg/build/maxima-5.20.1.p1/src/src
/binary-ecl/numerical/slatec/dbesj0.fas"
-L"/home/wstein/build/sage-4.3.3.alpha0/local/lib/"
"/cygdrive/c/WINDOWS/TEMP/ECLINIT5NW89S.o"
"/home/wstein/build/sage-4.3.3.alpha0/spkg/build/maxima-5.20.1.p1/src/src
/binary-ecl/numerical/slatec/dbesj0.o" -shared
-L/home/wstein/build/sage-4.3.3.alpha0/local/lib
-L/home/wstein/build/sage-4.3.3.alpha0/local/lib -lecl -lgmp -lgc -lm
make[1]: *** [binary-ecl/maxima] Error 1
make[1]: Leaving directory
`/home/wstein/build/sage-4.3.3.alpha0/spkg/build/maxima-5.20.1.p1/src/src'
make: *** [all-recursive] Error 1
}}}
The failure happens during the "make" step.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8269#comment:4>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.