mapnik的Python绑定
项目描述
以distutils方式重新包装的官方mapnik绑定,以方便部署。
这取决于您环境中的以下库
mapnik2(C++库)
BOOST c++
boost python
boost thread
boost regex
可选但强烈推荐的Python库
pycairo
PIL / Pillow
如果您是buildout用户,可以查看此包的buildout,它集成了pycairo & pil安装
见 github
MAPNIK2 注意事项
Python绑定与mapnik2库版本相关。
要使用
- mapnik2库 - 2.0.1:
== mapnik2 2.0.1.3
easy_install -U mapnik2==2.0.1.3
- mapnik2库 - 2.1.0:
== mapnik2 2.1.0
easy_install -U mapnik2==2.1.0
- mapnik2库 - 2.2.0:
== mapnik2 2.2.0
easy_install -U mapnik2==2.2.0
致谢
公司
贡献者
kiorky <kiorky@cryptelium.net>
dodobas <dodobas@geoinfo.geof.hr>
安装
先决条件
请记住,您可以通过设置LDFLAGS/CFLAGS/LD_LIBRARY_PATH来指定非标准位置以满足以下需求。
您需要以下包含和库:
mapnik-config工具需要位于您的$PATH中
Boost_python与您的Python解释器链接。如果它未安装在标准环境中,您需要处理CFLAGS/LDFLAGS以找到它,或者使用minitage ;)
cairo / cairomm(可选,但启用如果您用cairo支持编译了mapnik)
mapnik2
当前的Python解释器
pycairo / PIL需要放在PYTHONPATH中
Buildout
一些开发者使用buildout来简化部署。* 通过正确设置PATH环境变量来指定mapnik-config的位置 * 将mapnik添加到要安装的egg列表中,例如。
[buildout] parts = somepart [somepart] recipe = minitage.recipe.scripts # or zc.recipe.egg ... eggs = mapnik2
重新运行buildout,例如使用
$ ./bin/buildout
您可以从这个egg中提供的buildout安装中了解如何集成mapnik。魔法在于使用buildout.minitagificator将PKG_CONFIG_PATH和PYTHONPATH与pycairo关联
运行此包的buildout
首先,您需要本地安装pycairo
bin/buildout -vvvvvNc cairo.cfg
然后运行buildout
bin/buildout -vvvvvN
带或不带virtualenv的easy_install
virtualenv --no-site-packages test source test/bin/activate easy_install mapnik2
通过正确设置PATH环境变量来说明mapnik-config的位置
当您阅读这篇文章时,您可能已经运行了easy_install mapnik2。在此了解如何安装setuptools(和EasyInstall)的方法:[http://peak.telecommunity.com/DevCenter/EasyInstall](http://peak.telecommunity.com/DevCenter/EasyInstall)
BOOST 注意事项
要指定要链接哪个boostpython库,您可以使用以下方法
export MAPNIK2_BOOST_PYTHON="libboost_python.so.1:libboost_thread.so.1"
在您的文件系统中
/usr/lib/libboost_python.so.1 /usr/lib/libboost_thread.so.1
对于Ubuntu用户,请参阅[此文档](https://github.com/mapnik/mapnik/wiki/UbuntuInstallation)来安装此egg的先决条件。
Minitage
一些开发者使用minitage来简化部署(在buildout之上的一层)。实际上,它处理了很多像无聊的编译标志这样的东西。例如,要开发此egg,您可以这样做来引导它:
easy_install -U virtualenv virtualenv --no-site-packages --distribute ~/minitage mkdir ~/minitage/others
如果您还没有安装minitage,请安装它
source ~/minitage/bin/activate easy_install -U minitage.core
初始化它(强制)
source ~/minitage/bin/activate minimerge -s
要为mapnik2 egg开发安装minilay,您可以这样做
cd ~/minitage/others git clone https://github.com/mapnik/pymapnik2.git mapnik-egg-(py26 or py27) ln -fs ~/minitage/others/mapnik-egg*/minilays/mapnik-egg/ ~/minitage/minilays/mapnik-egg #for python-2.6 minimerge -av mapnik-egg-py26 #for python-2.7 minimerge -av mapnik-egg-py27
享受您的安装
cd ~/minitage/others/mapnik-egg-py26 or cd ~/minitage/others/mapnik-egg-py27 ./bin/mypy >>> import mapnik2
为了在您的minitagified应用程序中使用mapnik2
在您的buildout的eggs部分中添加
[part] eggs += mapnik2在您的minibuild中,合并您在这里找到的mapnik2依赖项
重新合并您的项目以构建mapnik2 egg
然后将mapnik2添加到您的setup.py或buildout中,以便将其抓取到您的pythonpath中。
重新运行buildout,您就完成了
mapnik2 的更改日志
2.2.0 (2013-07-23)
更新2.2.0 [dodobas]
2.1.0.5 (2012-11-01)
freebsd端口
2.1.0 (2012-09-02)
更新2.1.0
2.0.1.1 (2012-08-05)
重命名发布
2.0.2 (2012-08-04)
多架构支持,感谢noirbizarre。[kiorky] 请参阅[https://github.com/mapnik/pymapnik2/pull/4](https://github.com/mapnik/pymapnik2/pull/4)
2.0.1 (2012-05-06)
mapnik2 eggified Python绑定的第一个公开版本
项目详细信息
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于[安装包](https://packaging.pythonlang.cn/tutorials/installing-packages/)的信息。
源分布
mapnik2-2.2.0.zip 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eddae14c5700cd012429222035bc843005deb99f2097d4503fd67e735c577371 |
|
MD5 | ac30ef6b8087c56f6577d6540888bbee |
|
BLAKE2b-256 | 378d2dd0ceb156ab78071bc87402015e5aaf398b39e9f400221145bdb36391a5 |