Opened 12 years ago

Closed 12 years ago

#34657 closed defect (invalid)

py27-scipy +atlas builds correctly but crashes on importing interpolate module

Reported by: ith140@… Owned by: skymoo (Adam Mercer)
Priority: Normal Milestone:
Component: ports Version: 2.1.1
Keywords: Cc:
Port: py27-scipy

Description (last modified by ryandesign (Ryan Carsten Schmidt))

py27-scipy +atlas builds correctly, but crashes upon importing interpolate as shown in the ipython session below.

Python 2.7.3 (default, Apr 13 2012, 08:56:00) 
Type "copyright", "credits" or "license" for more information.

IPython 0.12 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: from scipy import interpolate
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
/Users/ianhoffman/<ipython-input-1-e8ca003dcbfa> in <module>()
----> 1 from scipy import interpolate

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/interpolate/__init__.py in <module>()
    150 from fitpack2 import *
    151 
--> 152 from rbf import Rbf
    153 
    154 from polyint import *

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/interpolate/rbf.py in <module>()
     47 from numpy import (sqrt, log, asarray, newaxis, all, dot, exp, eye,
     48                    float_)
---> 49 from scipy import linalg
     50 
     51 __all__ = ['Rbf']

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/linalg/__init__.py in <module>()
    113 from linalg_version import linalg_version as __version__
    114 
--> 115 from misc import *
    116 from basic import *
    117 from decomp import *

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/linalg/misc.py in <module>()
      1 import numpy as np
      2 from numpy.linalg import LinAlgError
----> 3 import fblas
      4 
      5 __all__ = ['LinAlgError', 'norm']

ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/linalg/fblas.so, 2): Symbol not found: __gfortran_transfer_character_write
  Referenced from: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/linalg/fblas.so
  Expected in: flat namespace
 in /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/linalg/fblas.so

Change History (6)

comment:1 Changed 12 years ago by Veence (Vincent)

I can’t reproduce this:

-> python2.7
Python 2.7.3 (default, Apr 24 2012, 16:15:37) 
Type "help", "copyright", "credits" or "license" for more information.
>>> from scipy import interpolate
>>> 

comment:2 Changed 12 years ago by ith140@…

I'm using atlas 3.9.76 (gcc46),py27-scipy 0.10.1 +atlas (gcc45), py27-numpy 1.6.2 +atlas.

comment:3 Changed 12 years ago by Veence (Vincent)

The gcc versions you use must be consistent, I guess; otherwise you will mess up the various libraries (precisely what you get). Try rebuilding scipy with gcc46 instead.

comment:4 Changed 12 years ago by ith140@…

Got it fixed. I couldn't build using gcc46, but I could rebuild all three forcing the use of gcc45 and get it working. Not sure how all these things got out of alignment (too bad there isn't a better mechanism to keep gcc consistent), but thanks so much for your help.

comment:5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ith140@… removed
Description: modified (diff)
Owner: changed from macports-tickets@… to ram@…

comment:6 in reply to:  4 Changed 12 years ago by mf2k (Frank Schima)

Resolution: invalid
Status: newclosed

Replying to ith140@…:

Got it fixed. I couldn't build using gcc46, but I could rebuild all three forcing the use of gcc45 and get it working. Not sure how all these things got out of alignment (too bad there isn't a better mechanism to keep gcc consistent), but thanks so much for your help.

There is a way. In your /opt/local/etc/macports/variants.conf file add +gcc45 or whatever desired gcc version you want.

Note: See TracTickets for help on using tickets.