Opened 16 years ago

Closed 14 years ago

Last modified 14 years ago

#4233 closed defect (fixed)

UPDATE: py-scipy

Reported by: ben@… Owned by: erickt@…
Priority: Normal Milestone:
Component: ports Version: 1.0
Keywords: Cc: markd@…
Port:

Description

I've been struggling to try and get scipy to build on Tiger. The portfile in bug #3174 doesn't work for me, though if it works on 10.3 I'll commit it if you want me to, Eric.

I've tried two approaches, both of which fail. I'm hoping someone will find what I did wrong and correct one of them.

Approach #1: gcc-3.3/g77-dp-3.4. I discovered that it's necessary to use apple's gcc (to get things like -framework to work). Since they don't provide a g77, and linking between gcc 3 and gfortran 4 isn't supposed to work, I used g77-dp-3.4 for the fortran compiler. The attached portfile builds fine. However, when imported with import scipy, python quits with a 'bus error'. To be precise, this happens when fastumath is imported (try 'from scipy import fastumath').

Approach #2: gcc-4.0/gfortran-dp-4.0. I wondered if the above problem was the result of python having been build with gcc40, but scipy being built with gcc33. So, I tried to build scipy with gcc40. Obstacles:

  • some of the fortran code (odepack, quadpack) contains hollerith constants (an

ancient fortran tradition) which won't compile with gfortran-4.0. i fixed these using ftidy (new port just committed)

  • other fortran code (conjugate gradient routines) has other problems that i did

not fix, and used ignore to skip the (major) package linalg instead

  • there are a few standard gcc40 problems -- static vs extern definitions, etc.

i patched these.

The attached portfile and patches also build fine on 10.4. But import scipy fails again, with a bus error.

Hoping someone can make a working port out of this...

Attachments (8)

Portfile.gcc3.3.g77.3.4 (1.0 KB) - added by ben@… 16 years ago.
gcc3 portfile, using patch from bug 3174
Portfile (1.5 KB) - added by ben@… 16 years ago.
gcc 4 portfile
ftidyinplace (155 bytes) - added by ben@… 16 years ago.
files/ftidyinplace -- wrapper for ftidy
patch-gnufcompiler.py.gcc4 (1.5 KB) - added by ben@… 16 years ago.
files/patch-gnufcompiler.py.gcc4
patch-Lib_interpolate_fitpack.pyf (1.3 KB) - added by ben@… 16 years ago.
files/patch-Lib_interpolate_fitpack.pyf
patch-Lib_stats_ranlib_all.c (351 bytes) - added by ben@… 16 years ago.
files/patch-Lib_stats_ranlib_all.c
patch-scipy_core_scipy_base_fastumathmodule.c (609 bytes) - added by ben@… 16 years ago.
files/patch-scipy_core_scipy_base_fastumathmodule.c
patch-setup.py (294 bytes) - added by ben@… 16 years ago.
files/patch-setup.py

Download all attachments as: .zip

Change History (13)

Changed 16 years ago by ben@…

Attachment: Portfile.gcc3.3.g77.3.4 added

gcc3 portfile, using patch from bug 3174

Changed 16 years ago by ben@…

Attachment: Portfile added

gcc 4 portfile

Changed 16 years ago by ben@…

Attachment: ftidyinplace added

files/ftidyinplace -- wrapper for ftidy

Changed 16 years ago by ben@…

Attachment: patch-gnufcompiler.py.gcc4 added

files/patch-gnufcompiler.py.gcc4

Changed 16 years ago by ben@…

files/patch-Lib_interpolate_fitpack.pyf

Changed 16 years ago by ben@…

files/patch-Lib_stats_ranlib_all.c

Changed 16 years ago by ben@…

files/patch-scipy_core_scipy_base_fastumathmodule.c

Changed 16 years ago by ben@…

Attachment: patch-setup.py added

files/patch-setup.py

comment:1 Changed 16 years ago by erickt@…

So did a little research into getting scipy installed on Tiger. According to this thread: http:// www.scipy.org/mailinglists/mailman?fn=scipy-user/2005-June/004553.html, the latest cvs release should have a fix for this problem. Since they're in the process of switching over to subversion at the moment, it'll take doing to track down a recent copy. Once I do, I'll see if I can make a portfile to install it.

comment:2 Changed 15 years ago by mww@…

Summary: py-scipyUPDATE: py-scipy

comment:3 Changed 15 years ago by suhlhorn@…

Tried installing on tiger and got the following error:

---> Fetching py-scipy ---> Attempting to fetch SciPy_complete-0.3.2.tar.gz from http://www.scipy.org//download/scipy/src/ ---> Verifying checksum(s) for py-scipy ---> Extracting py-scipy ---> Applying patches to py-scipy ---> Configuring py-scipy ---> Building py-scipy with target build Error: Target com.apple.build returned: shell command "cd "/opt/local/var/db/dports/build/_opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_python_py-scipy/work/SciPy_complete-0.3.2" && LDFLAGS="-L/opt/local/lib" /opt/local/bin/python2.4 setup.py build" returned error 1 Command output: Lib/special/cephes/polmisc.c:224: warning: incompatible implicit declaration of built-in function 'malloc' Lib/special/cephes/polmisc.c: In function 'polcos': Lib/special/cephes/polmisc.c:275: warning: incompatible implicit declaration of built-in function 'malloc' gcc-4.0: Lib/special/cephes/ndtr.c In file included from Lib/special/cephes/mconf_BE.h:190,

from Lib/special/cephes/mconf.h:3, from Lib/special/cephes/ndtr.c:148:

Lib/special/cephes/protos.h:27: warning: conflicting types for built-in function 'cexp' Lib/special/cephes/protos.h:28: warning: conflicting types for built-in function 'csin' Lib/special/cephes/protos.h:29: warning: conflicting types for built-in function 'ccos' Lib/special/cephes/protos.h:30: warning: conflicting types for built-in function 'ctan' Lib/special/cephes/protos.h:32: warning: conflicting types for built-in function 'casin' Lib/special/cephes/protos.h:33: warning: conflicting types for built-in function 'cacos' Lib/special/cephes/protos.h:34: warning: conflicting types for built-in function 'catan' Lib/special/cephes/protos.h:42: warning: conflicting types for built-in function 'csqrt' ar: adding 50 object files to build/temp.darwin-8.3.0-Power_Macintosh-2.4/libcephes.a ar: adding 25 object files to build/temp.darwin-8.3.0-Power_Macintosh-2.4/libcephes.a ranlib:@ build/temp.darwin-8.3.0-Power_Macintosh-2.4/libcephes.a building 'dfftpack' library compiling Fortran sources f95(f77) options: '-fixed -O4' f95(f90) options: '-O4' f95(fix) options: '-fixed -O4' creating build/temp.darwin-8.3.0-Power_Macintosh-2.4/Lib/fftpack creating build/temp.darwin-8.3.0-Power_Macintosh-2.4/Lib/fftpack/dfftpack compile options: '-c' f95:f77: Lib/fftpack/dfftpack/dcosqb.f sh: line 1: f95: command not found sh: line 1: f95: command not found error: Command "f95 -fixed -O4 -c -c Lib/fftpack/dfftpack/dcosqb.f -o build/temp.darwin-8.3.0-Power_Macintosh-2.4/Lib/fftpack/dfftpack/dcosqb.o" failed with exit status 127

Error: /opt/local/bin/port: Status 1 encountered during processing.

comment:4 Changed 14 years ago by markd@…

Resolution: fixed
Status: newclosed

This port was committed but the ticket never closed.

comment:5 Changed 14 years ago by markd@…

Cc: markd@… added
Note: See TracTickets for help on using tickets.