[SciPy-user] Error building statlib.so
Bob Ippolito
bob at redivi.com
Sat Mar 13 10:41:49 EST 2004
On Mar 13, 2004, at 9:49 AM, Pearu Peterson wrote:
>
>
> On Fri, 12 Mar 2004, Christopher Fonnesbeck wrote:
>
>> For some reason, stats/statlib refuses to build for me anymore. I did
>> not make any changes to this file, yet on the last few build attempts
>> I
>> get the error below, which is obviously related to not seeing the
>> python framework. However, I have the updated gnufcompiler.py, which
>> contains the following for OSX:
>>
>> opt.extend(["-Wl,-framework","-Wl,Python","-lcc_dynamic","-bundle"])
>>
>> So, I'm completely at a loss as to why these do not get appended to
>> the
>> compile options.
>>
>> Any ideas?
>
> Acctually, the latest CVS version of gnufcompiler.py contains
>
> if sys.platform=='darwin':
> if sys.executable.startswith('/usr/bin'):
> # This is when Python is from Apple framework
> opt.extend(["-Wl,-framework","-Wl,Python"])
> #else we are running in Fink python.
> opt.extend(["-lcc_dynamic","-bundle"])
> else:
> ...
>
> which means that in your case Python is assumed to be Fink Python but
> obviously (?) you are using Apple Python that is just installed to
> nonstandard (?) location.
> Could you guys and girls running on OSX find out what is the most
> robust
> way to determine that Python is either of Apple or Fink one? May be
> sys.version should be used instead of sys.executable for that?
It's possible that sys.executable could also start with /System if you
use a pythonw shell script.
[crack:~/src/stackless/Stackless] bob% pythonw -c "import sys; print
sys.executable"
/System/Library/Frameworks/Python.framework/Versions/2.3/Resources/
Python.app/Contents/MacOS/Python
[crack:~/src/stackless/Stackless] bob% python -c "import sys; print
sys.executable"
/usr/bin/python
[crack:~/src/stackless/Stackless] bob% python -c "import sys,os; print
os.path.realpath(sys.executable)"
/System/Library/Frameworks/Python.framework/Versions/2.3/bin/python
I guess it should be changed to
os.path.realpath(sys.executable).startswith('/System')
-bob
More information about the SciPy-User
mailing list