在Windows XP上安装mapnik失败,并显示消息"ImportError:DLL加载失败:找不到指定的过程."

D M*_*ell 3 python openstreetmap mapnik

我正在尝试在Windows XP上安装mapnik.

在努力遵循其网站(http://trac.mapnik.org/wiki/WindowsInstallation)上的说明后,它失败并显示以下消息:

    File "<stdin>", line 1, in <module>
    File "C:\mapnik-0.7.1\python\2.6\site-packages\mapnik\__init__.py", line 43, in <module> from _mapnik import *
    ImportError: DLL load failed: The specified procedure could not be found.
Run Code Online (Sandbox Code Playgroud)

我也尝试了OSGEO4W安装程序,这不再成功,但在显示相同的错误消息之前还会产生一个弹出窗口:

    "The procedure entry point xmlCtxtReadMemory could not be located in the dynamic link library libxml2.dll."
Run Code Online (Sandbox Code Playgroud)

故障排除建议强调了几个可能缺失的dll.我安装了这两个但未能解决问题.

Dependency Walker确定了另外三个缺失的dll,我也安装了它,但仍然没有解决问题.

任何建议非常感谢!

n0d*_*aft 6

这是一个很老的线索.然而,我遇到了同样的问题,并且能够通过我在网络上找到的不同提示来解决它.

  1. 我必须确保我有32位版本的Python.我使用的是Windows x86 MSI安装程序(2.7.2)
  2. 我为Python设置了PATH变量:C:\ Program Files(x86)\ Python27
  3. 我下载并安装了Mapnik v2.2.0 Windows 32位软件包(所以没有SDK版本)
  4. 我按以下顺序设置了lib和bin文件夹的PATH变量:C:\ Program Files\mapnik-v2.2.0\lib; C:\ Program Files\mapnik-v2.2.0\bin(这里有重要部分:确保将这两个条目放在路径变量的最开头,如zvolsky所述,网址为https://github.com/mapnik/mapnik-packaging/issues/109)
  5. 确保你的c:\ windows文件夹中有libxml2.dll,正如Joan Natalie 在Windows 7中使用Python 2.7安装Mapnik 2.2.0所提到的那样我刚从mapnik安装文件夹C:\ Program Files\mapnik复制了dll文件-v2.2.0\LIB

之后我能够执行命令"import mapnik"而没有任何问题.我还能够执行这里所述的python演示,编号为5:https://gist.github.com/springmeyer/5651701

所以我想我有两个问题.首先,我在某种程度上错过了libxml2.dll文件,其次是因为我把mapnik条目放在最后的PATH变量中,因为我的系统上有许多相同的dll,所以python不知何故错了.

希望我能在这里提供缺少的解决方案.