Windows 7上的Haskell Platform 2010.2.0.0上的Cabal安装错误

时间:2011-03-16 21:42:41

标签: python windows haskell cabal

我是新手Haskell用户并且想要使用Python库(用于与现有软件交互,例如使用Numpy库)。我发现这可以使用MissingPy包(http://hackage.haskell.org/package/MissingPy)完成,但是我无法通过Haskell平台2010.2.0.0上的Windows 7上的cabal安装它。

我遇到的第一个错误是因为编译器没有找到python2.6库。这是通过将python2.6.dll放在正确的目录中(或将其添加到系统路径变量)来解决的。但是,我无法在“cabal install missingpy”命令的输出结束时修复以下错误:

...
[11 of 12] Compiling MissingPy.FileArchive.GZip ( MissingPy\FileArchive\GZip.hs, dist\build\MissingPy\FileArchive\GZip.p_o )
[12 of 12] Compiling MissingPy.FileArchive.BZip2 ( MissingPy\FileArchive\BZip2.hs, dist\build\MissingPy\FileArchive\BZip2.p_o )
Registering MissingPy-0.10.5...
setup.exe: MissingPy-0.10.5: library-dirs: None doesn't exist or isn't a
directory (use --force to override)
cabal: Error: some packages failed to install:
MissingPy-0.10.5 failed during the building phase. The exception was:
ExitFailure 1

在阅读Using c2hs on Windows上提出的问题答案的建议后,我安装了完整的MinGW软件。但是,这并没有解决问题。

任何人都有这个问题的经验和解决方案吗?

1 个答案:

答案 0 :(得分:0)

请注意,Setup.exe使用python工具填充构建信息:

https://github.com/softmechanics/missingpy/blob/master/Setup.hs

相关代码在这里:

  libDir       <- python ["-c", "from distutils.sysconfig import *; print get_python_lib()"]
  incDir       <- python ["-c", "from distutils.sysconfig import *; print get_python_inc()"]
  confLibDir   <- python ["-c", "from distutils.sysconfig import *; print get_config_var('LIBDIR')"]
  pyVersionStr <- python ["-c", "import sys; sys.stdout.write(\"%d.%d\" % (sys.version_info[0], sys.version_info[1]))"]

如果python工具不存在,无法找到或提供错误信息,则设置将失败。