如何在Windows上安装scikits.audiolab 0.11.0

Mic*_*bie 6 windows install pip scikits anaconda

我目前正在尝试在Windows 10上为Python 3.5.4安装scikits.audiolab 0.11.0,它需要来自http://www.mega-nerd.com/libsndfile/的 libsndfile .我已将此安装到我的conda虚拟环境中,以便文件路径如下所示:

C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile
Run Code Online (Sandbox Code Playgroud)

然后我在其中编辑site.cfg文件

C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\Lib\site-packages\numpy\distutils
Run Code Online (Sandbox Code Playgroud)

阅读:

[sndfile]
library_dirs = C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile;C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile\lib
include_dirs = C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile;C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile\include
sndfile_libs = sndfile-1
Run Code Online (Sandbox Code Playgroud)

然后我在anaconda提示符下激活我的wavenet环境并输入:

pip install scikits.audiolab==0.11.0
Run Code Online (Sandbox Code Playgroud)

它给出了以下错误和Traceback:

(wavenet) C:\Windows>pip install scikits.audiolab==0.11.0
Collecting scikits.audiolab==0.11.0
    Using cached scikits.audiolab-0.11.0.tar.gz
        Complete output from command python setup.py egg_info:
        SndfileInfo:
            libraries sndfile not found in C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile
            libraries sndfile not found in C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile\lib
        Traceback (most recent call last):
            File "scikits\audiolab\pysndfile\setup.py", line 20, in configuration
              sf_config = sf_info.get_info(2)
            File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\system_info.py", line 578, in get_info
              raise self.notfounderror(self.notfounderror.__doc__)
        numpy.distutils.system_info.NotFoundError: Some third-party program or library is not found.

        During handling of the above exception, another exception occurred:

        Traceback (most recent call last):
          File "<string>", line 1, in <module>
          File "C:\Users\MXJ719\AppData\Local\Temp\pip-build-bet3e29j\scikits.audiolab\setup.py", line 85, in <module>
            classifiers=CLASSIFIERS)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\core.py", line 135, in setup
            config = configuration()
          File "C:\Users\MXJ719\AppData\Local\Temp\pip-build-bet3e29j\scikits.audiolab\setup.py", line 71, in configuration
            config.add_subpackage(DISTNAME)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 1029, in add_subpackage
            caller_level = 2)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 998, in get_subpackage
            caller_level = caller_level + 1)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 935, in _get_configuration_from_setup_py
            config = setup_module.configuration(*args)
          File "scikits\audiolab\setup.py", line 10, in configuration
            confgr.add_subpackage('pysndfile')
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 1029, in add_subpackage
            caller_level = 2)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 998, in get_subpackage
            caller_level = caller_level + 1)
          File "C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\lib\site-packages\numpy\distutils\misc_util.py", line 935, in _get_configuration_from_setup_py
            config = setup_module.configuration(*args)
          File "scikits\audiolab\pysndfile\setup.py", line 25, in configuration
            site.cfg file, in section [sndfile].""")
numpy.distutils.system_info.NotFoundError: sndfile (http://www.mega-nerd.com/libsndfile/) library not found.
Directories to search for the libraries can be specified in the
site.cfg file, in section [sndfile].

----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in 
C:\Users\MXJ719\AppData\Local\Temp\pip-build-bet3e29j\scikits.audiolab\
Run Code Online (Sandbox Code Playgroud)

我想知道为什么安装程序似乎无法"看到"我在site.cfg文件中给出的libsndfile目录,并被告知如何修复此问题以安装scikits.audiolab版本0.11.0

qub*_*dup 0

-1从 sndfile 库文件名中删除“ ”。

在你的情况下:

  1. 重命名libsndfile-1.liblibsndfile.lib
  2. 重命名libsndfile-1.deflibsndfile.def

这些文件位于C:\Users\MXJ719\AppData\Local\Continuum\anaconda3\envs\wavenet\libs\libsndfile\lib.

我在安装 sndfile 时遇到了同样的问题C:\Program Files\Mega-Nerd\libsndfile\

我的C:\Users\[userNameHere]\site.cfg文件包含以下内容:

[sndfile]
library_dirs = C:\Program Files\Mega-Nerd\libsndfile\lib\
include_dirs = C:\Program Files\Mega-Nerd\libsndfile\include\
Run Code Online (Sandbox Code Playgroud)

(定义sndfile_libs对我没有明显的影响,所以我把它省略了。)

希望这对你来说已经足够了。解决此问题后我遇到了其他问题,但我会尝试在https://github.com/cournape/audiolab/issues/7获取帮助