2011-10-27 3 views
1

Je suis incapable d'obtenir scikits.audiolab travailler sur OS X. J'ai essayé easy_install et de la source bâtiment, mais les deux me donne la même erreur:reliant à AudioLab à python2.6 sur 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 est créé dans l'emplacement qu'il décrit, donc c'est un problème étrange qui lie à ce que, autant que je peux voir. J'ai été perplexe. Je suis sur le point d'abandonner l'audiolab.

Je ne peux pas utiliser la méthode scipy intégrée pour le chargement des wavs, car elle ne fonctionne pas avec les WAV 24 bits.

Répondre

0

Audiolab requiert libsndfile. J'avais installé cela via MacPorts, mais il avait été construit en tant que x86_64 uniquement par défaut.

La suppression de toutes les installations et la réinstallation de libsndfile avec l'indicateur +universal l'ont créé en tant que i386 et x86_64.

Maintenant, je pourrais installer audiolab de la source et il lié correctement. :)