1

我正在使用 mac,我想安装osm2pgsql以将OSM数据导入PostgreSQL.

brew install osm2pgsql在终端执行。(我已经执行了brew update)。

这是输出:

==> Downloading https://github.com/openstreetmap/osm2pgsql/archive/v0.82.0.zip
Already downloaded: /Library/Caches/Homebrew/osm2pgsql-0.82.0.zip
==> ./autogen.sh
==> ./configure --with-proj=/usr/local/opt/proj
checking for fork... yes
checking for xml2-config... /usr/bin/xml2-config
checking for xml2 libraries... yes
checking for zlib compression library... no
configure: error: required library not found

READ THIS: https://github.com/mxcl/homebrew/wiki/troubleshooting

这是执行的输出brew doctor

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libMonoPosixHelper.dylib
    /usr/local/lib/libSFFileMonitor.32.dylib
    /usr/local/lib/libSFIPC.32.dylib
    /usr/local/lib/libSFIPC.I.dylib
    /usr/local/lib/libSFsqlite3.7.4.dylib
    /usr/local/lib/libSFSyncEngine.I.dylib

我不知道这些 dylib,我应该删除它们吗?

我应该怎么做 linstall osm2pgsql

还是我应该放弃osm2pgsql并使用其他工具将OSM数据导入PostgreSQL

[编辑 1]

根据http://www.zlib.net/,zlib 已经包含在 Mac OS X 中。

当我在谷歌中搜索它时,我发现了这个https://github.com/josegonzalez/homebrew-php/issues/205和这个https://github.com/josgonzalez/homebrew-php/issues/538

所以我执行以下两个命令:

brew tap homebrew/dupes
brew install zlib

结果输出为:

==> Downloading http://zlib.net/zlib-1.2.8.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/zlib/1.2.8
==> make install
==> Caveats
This formula is keg-only: so it was not symlinked into /usr/local.

Mac OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/zlib/lib
    CPPFLAGS: -I/usr/local/opt/zlib/include

==> Summary

看来我不必安装zlib。

我再次执行brew install osm2pgsql,但它仍然不起作用。

[编辑 2]

我放弃自制软件并通过二进制安装程序安装 osm2pgsql。

仅供参考:
http ://wiki.openstreetmap.org/wiki/Osm2pgsql#Binary_Installer https://github.com/openstreetmap/osm2pgsql/issues/15

4

3 回答 3

1

我对此一无所知,brew但根据错误消息,您缺少该zlib库。尝试先安装它。

你应该坚持下去,osm2pgsql因为它是将 OSM 数据导入 PostgreSQL 数据库的标准工具。

于 2013-08-20T06:40:22.983 回答
0

我编辑了公式,因为它也没有在 Mac OS X Mavericks 上运行。请参阅使其成功安装的要点。

https://gist.github.com/christoph-buente/e18584e312bcadfe82e5

我向自制软件存储库提交了一个拉取请求。希望它会被合并:

https://github.com/Homebrew/homebrew/pull/29862

于 2014-06-04T09:37:13.863 回答
0

您必须使用以下命令编辑公式:

brew edit <formula_name>

然后,您必须在 brew env 中进行所需的导出,最好的地方是在调用之前的 install 函数中

system "./configure", *args

这是要附加的行

ENV.append 'LDFLAGS', "-L/usr/local/opt/zlib/lib"
ENV.append 'CPPFLAGS', "-I/usr/local/opt/zlib/include"

完成后,您只需再次运行 brew 安装即可

于 2014-05-15T18:58:29.723 回答