2011-10-27 76 views
1

我一直無法得到scikits.audiolab在OS X上工作,我已經試過從源easy_install和建築,但兩者給我同樣的錯誤:連接在python2.6的到AUDIOLAB在OSX

----> 1 import scikits.audiolab 

/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scikits.audiolab-0.11.0-py2.6-macosx-10.3-fat.egg/scikits/audiolab/__init__.py in <module>() 
    23 __version__ = _version 
    24 
---> 25 from pysndfile import formatinfo, sndfile 
    26 from pysndfile import supported_format, supported_endianness, \ 
    27      supported_encoding, PyaudioException, \ 

/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scikits.audiolab-0.11.0-py2.6-macosx-10.3-fat.egg/scikits/audiolab/pysndfile/__init__.py in <module>() 
----> 1 from _sndfile import Sndfile, Format, available_file_formats, \ 
     2   available_encodings, sndfile_version 
     3 from compat import formatinfo, sndfile, PyaudioException, PyaudioIOError 
     4 from compat import supported_format, supported_endianness, supported_encoding 

ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scikits.audiolab-0.11.0-py2.6-macosx-10.3-fat.egg/scikits/audiolab/pysndfile/_sndfile.so, 2): Symbol not found: _sf_close 
    Referenced from: /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scikits.audiolab-0.11.0-py2.6-macosx-10.3-fat.egg/scikits/audiolab/pysndfile/_sndfile.so 
    Expected in: dynamic lookup 

_sndfile.so是在它描述的位置創建的,所以這是一個很奇怪的問題,就像我看到的那樣。讓我難住。我正在放棄audiolab。

我無法使用內置的scipy方法加載wav,因爲它不適用於24位WAV。

回答

0

Audiolab需要libsndfile。我已經通過MacPorts安裝了它,但它只是默認構建爲x86_64。

刪除所有安裝並重新安裝libsndfile +universal標誌將其構建爲i386和x86_64。

現在我可以從源代碼安裝audiolab並正確鏈接。 :)

相關問題