2013-08-20 298 views
1

我正在使用mac,我想安装osm2pgsql以将OSM数据导入PostgreSQL。在终端执行brew install osm2pgsql。 (我已经执行brew update)。“brew install osm2pgsql”失败

这里是输出:

==> 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 

我不知道这些dylibs,我应该删除?

我应该怎么做linstall osm2pgsql

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

[编辑1]

http://www.zlib.net/,zlib的已被包含在Mac OS X中的一部分

当我在谷歌搜索,我发现这个https://github.com/josegonzalez/homebrew-php/issues/205https://github.com/josegonzalez/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。

FYI:
http://wiki.openstreetmap.org/wiki/Osm2pgsql#Binary_Installer https://github.com/openstreetmap/osm2pgsql/issues/15

+0

为'酿造doctor'问题,请参阅http://dissociatedpress.net/blog/2012/11/18/til-how-to-find-the-program - 即,拥有-文件上-MAC-OS-X / –

回答

1

我不知道brew什么,但根据错误消息,缺少zlib库。尝试先安装它。

而且您应该保留至osm2pgsql,因为它是将OSM数据导入PostgreSQL数据库的标准工具。

0

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

brew edit <formula_name> 

然后,你必须在BREW ENV所需要的出口,要做到这一点的最好的地方是在安装功能之前的

system "./configure", *args 

这里的呼叫是行追加

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

当完成后,你只需要再次运行brew安装,它会运行