Problem solved.
Brief: sklearn depends on builds of numpy and scipy that link to atlas. On
MacOSX, default builds of numpy and scipy through macports link to the
Accelerate framework, and not to atlas. After forcing the atlas variants of
numpy and scipy, sklearn works fine.
Action: The implication here is that there is a bug in the macports port file.
Specific variants should be listed as dependencies rather than simply
"py27-numpy" and "py27-scipy" in the case of Python 2.7.
Thanks everyone for your help!
Best,
Andrew
On Oct 17, 2012, at 3:53 PM, Andrew Godbehere
<[email protected]> wrote:
> How exactly would I link this manually? My sense is that I'd need to edit the
> setup.py script. Is there another way?
>
> Thanks,
> Andrew
>
>
>
> On Oct 17, 2012, at 2:01 PM, [email protected] wrote:
>
>> can you try linking against libatlas manually? that should do it. then i'll
>> to fix the setup.py
>>
>>
>>
>> Andrew Godbehere <[email protected]> schrieb:
>> Hi Andy,
>>
>> I found _ATL_drotg defined in /opt/local/lib/libatlas.a.
>> _ATL_drotg is listed as an undefined reference in libcblas.a, libf77blas.a,
>> and libptcblas.a.
>>
>> That said, I'm mystified as to why these symbols cannot be located. Does
>> this hint at a potential problem in linking?
>>
>> Thanks again,
>> Andrew
>>
>> On Oct 16, 2012, at 3:26 PM, Andrew Godbehere
>> <[email protected]> wrote:
>>
>>> Also, for some reason, scikit-learn tries to build for posix on my system,
>>> rather than mac osx.
>>>
>>> On Oct 16, 2012, at 3:07 PM, Andrew Godbehere
>>> <[email protected]> wrote:
>>>
>>>> Hi Andy,
>>>>
>>>> I was suspicious of clang, I'd rather this build with gcc. I'll look into
>>>> changing that.
>>>>
>>>>
>>>> Here's the output from distutils on blas_opt:
>>>> {'extra_link_args': ['-Wl,-framework', '-Wl,Accelerate'],
>>>> 'extra_compile_args': ['-msse3',
>>>> '-I/System/Library/Frameworks/vecLib.framework/Headers'], 'define_macros':
>>>> [('NO_ATLAS_INFO', 3)]}
>>>>
>>>> Do you see anything suspicious there?
>>>>
>>>> I'm trying to find _ATL_drotg, but I'm first having trouble locating the
>>>> appropriate .so files on my system. I'll have more info once I track them
>>>> down. I'll check cblas and atlas.
>>>>
>>>> Thanks for the help!
>>>>
>>>> Best,
>>>> Andrew
>>>>
>>>> On Oct 16, 2012, at 1:11 PM, Andreas Mueller <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Andrew.
>>>>> Let's see if we can get to the bottom of this.
>>>>> I'm really no expert here.
>>>>>
>>>>> On 10/16/2012 09:01 PM, Andrew Godbehere wrote:
>>>>>> otools (as opposed to ldd) on arrayfuncs.so yields:
>>>>>> (1) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
>>>>>> version 169.3.0)
>>>>>> (2)
>>>>>> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
>>>>>> (compatibility version 1.0.0, current version 4.0.0)
>>>>>>
>>>>>> I'm hoping this isn't an issue with OSX Accelerate.
>>>>>>
>>>>>> arrayfuncs.so was built as follows:
>>>>>>
>>>>>> /usr/bin/clang -bundle -undefined dynamic_lookup -L/opt/local/lib
>>>>>> build/temp.macosx-10.8-x86_64-2.7/sklearn/utils/arrayfuncs.o
>>>>>> -Lbuild/temp.macosx-10.8-x86_64-2.7 -lcblas -lm -o
>>>>>> sklearn/utils/arrayfuncs.so -Wl,-framework -Wl,Accelerate
>>>>>>
>>>>> Err. Has any one tried building with clang yet? But I guess that's not
>>>>> the problem ;)
>>>>> I would have expected some atlas linker flags.
>>>>> Do you by any chance know where
>>>>> _ATL_drotg is defined? I have drotg from cblas and it is defined in
>>>>> cblas.so. So I would guess some linker flag is missing.
>>>>>
>>>>> Also, could you please run:
>>>>>
>>>>> from numpy.distutils.system_info import get_info; print
>>>>> get_info('blas_opt', 0)
>>>>>
>>>>> This should tell us what numpy things are good compiler flags.
>>>>>
>>>>> Andy
>>>>> ------------------------------------------------------------------------------
>>>>> Don't let slow site performance ruin your business. Deploy New Relic APM
>>>>> Deploy New Relic app performance management and know exactly
>>>>> what is happening inside your Ruby, Python, PHP, Java, and .NET app
>>>>> Try New Relic at no cost today and get our sweet Data Nerd shirt too!
>>>>> http://p.sf.net/sfu/newrelic-dev2dev_______________________________________________
>>>>> Scikit-learn-general mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Everyone hates slow websites. So do we.
>>>> Make your web apps faster with AppDynamics
>>>> Download AppDynamics Lite for free today:
>>>> http://p.sf.net/sfu/appdyn_sfd2d_oct_______________________________________________
>>>> Scikit-learn-general mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>>>
>>> ------------------------------------------------------------------------------
>>> Everyone hates slow websites. So do we.
>>> Make your web apps faster with AppDynamics
>>> Download AppDynamics Lite for free today:
>>> http://p.sf.net/sfu/appdyn_sfd2d_oct_______________________________________________
>>> Scikit-learn-general mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>>
>>
>>
>> Everyone hates slow websites. So do we.
>> Make your web apps faster with AppDynamics
>> Download AppDynamics Lite for free today:
>> http://p.sf.net/sfu/appdyn_sfd2d_oct
>>
>>
>> Scikit-learn-general mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>>
>> --
>> Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
>> ------------------------------------------------------------------------------
>> Everyone hates slow websites. So do we.
>> Make your web apps faster with AppDynamics
>> Download AppDynamics Lite for free today:
>> http://p.sf.net/sfu/appdyn_sfd2d_oct_______________________________________________
>> Scikit-learn-general mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_sfd2d_oct_______________________________________________
> Scikit-learn-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Scikit-learn-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general