[OSM-dev] troubles installing osm2pgsql on Mac OS X 10.6: make fail

owntheweb owntheweb at gmail.com
Thu Aug 5 18:03:18 BST 2010


Hello Dane,
I'll be sure to check out homebrew in the morning. I also don't mind
uninstalling macports, at least temporarily (with my experience level, I
don't recall what I installed it for initially) to get this thing up. For
the lines you mentioned, here is the full printout (no luck this round):

$
PATH=/Library/Frameworks/GEOS.framework/unix/bin/:/usr/local/pgsql/bin/$PATH
\
> CFLAGS="-I/usr/include -I/Library/Frameworks/PROJ.framework/unix/include"
> \
> LDFLAGS="-L/usr/lib -L/Library/Frameworks/PROJ.framework/unix/lib/" \
> ./configure && make
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: config.h is unchanged
gcc  -o osm2pgsql UTF8sanitizer.o expire-tiles.o input.o keyvals.o
middle-pgsql.o middle-ram.o osm2pgsql.o output-gazetteer.o output-null.o
output-pgsql.o pgsql.o rb.o reprojection.o sprompt.o text-tree.o
build_geometry.o -g -O2 -Wall -Wextra -I/opt/local/include/libxml2
-I/opt/local/include -I/usr/local/pgsql/include -DVERSION=\"0.69-22560\"
-DHAVE_PTHREAD -DOSM2PGSQL_DATADIR=\"/usr/local/share/osm2pgsql\"
-L/opt/local/lib -lxml2 -lz -lpthread -liconv -lm  -L/opt/local/lib -lgeos
-L/usr/local/pgsql/lib -lpq -lbz2 -lz -g -lproj -lstdc++ -lpthread
ld: warning: in /opt/local/lib/libxml2.dylib, file is not of required
architecture
ld: warning: in /opt/local/lib/libz.dylib, file is not of required
architecture
ld: warning: in /opt/local/lib/libiconv.dylib, file is not of required
architecture
ld: warning: in /opt/local/lib/libgeos.dylib, file is not of required
architecture
ld: warning: in /opt/local/lib/libbz2.dylib, file is not of required
architecture
ld: warning: in /opt/local/lib/libproj.dylib, file is not of required
architecture
Undefined symbols:
  "_pj_transform", referenced from:
      _coords_to_tile in reprojection.o
      _reproject in reprojection.o
  "geos::io::WKTReader::WKTReader(geos::geom::GeometryFactory const*)",
referenced from:
      _parse_wkt in build_geometry.o
 
"geos::geom::GeometryFactory::createLinearRing(geos::geom::CoordinateSequence*)
const", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_xmlCleanupParser", referenced from:
      _main in osm2pgsql.o
  "geos::geom::GeometryFactory::~GeometryFactory()", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _parse_wkt in build_geometry.o
      _parse_wkt in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_xmlFreeTextReader", referenced from:
      _main in osm2pgsql.o
  "geos::io::WKTReader::read(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)", referenced from:
      _parse_wkt in build_geometry.o
  "_pj_get_def", referenced from:
      _project_init in reprojection.o
  "_xmlReaderForIO", referenced from:
      _sanitizerOpen in UTF8sanitizer.o
      _inputUTF8 in input.o
  "_gzclose", referenced from:
      _inputClose in input.o
  "_xmlTextReaderName", referenced from:
      _main in osm2pgsql.o
  "_gzopen", referenced from:
      _inputOpen in input.o
  "geos::geom::Coordinate::equals2D(geos::geom::Coordinate const&) const",
referenced from:
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_gzread", referenced from:
      _readFile in input.o
 
"geos::geom::GeometryFactory::createMultiLineString(std::vector<geos::geom::Geometry*,
std::allocator<geos::geom::Geometry*> >*) const", referenced from:
      _build_geometry in build_geometry.o
  "geos::geom::Coordinate::Coordinate(double, double, double)", referenced
from:
      _build_geometry in build_geometry.o
      coords2nodes(geos::geom::CoordinateSequence*, osmNode**)      in
build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "geos::geom::Coordinate::distance(geos::geom::Coordinate const&) const",
referenced from:
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
  "_xmlTextReaderGetAttribute", referenced from:
      _ParseAction in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
 
"geos::geom::GeometryFactory::createMultiPolygon(std::vector<geos::geom::Geometry*,
std::allocator<geos::geom::Geometry*> >*) const", referenced from:
      _build_geometry in build_geometry.o
  "geos::geom::Coordinate::~Coordinate()", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      coords2nodes(geos::geom::CoordinateSequence*, osmNode**)      in
build_geometry.o
      coords2nodes(geos::geom::CoordinateSequence*, osmNode**)      in
build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_xmlTextReaderNodeType", referenced from:
      _main in osm2pgsql.o
      _main in osm2pgsql.o
  "geos::operation::linemerge::LineMerger::getMergedLineStrings()",
referenced from:
      _build_geometry in build_geometry.o
  "geos::geom::GeometryFactory::createPolygon(geos::geom::LinearRing*,
std::vector<geos::geom::Geometry*, std::allocator<geos::geom::Geometry*> >*)
const", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_BZ2_bzReadOpen", referenced from:
      _inputOpen in input.o
      _bzReOpen in input.o
  "geos::operation::linemerge::LineMerger::add(geos::geom::Geometry
const*)", referenced from:
      _build_geometry in build_geometry.o
  "_xmlTextReaderRead", referenced from:
      _main in osm2pgsql.o
      _main in osm2pgsql.o
  "_pj_init_plus", referenced from:
      _project_init in reprojection.o
      _project_init in reprojection.o
      _project_init in reprojection.o
      _project_init in reprojection.o
  "_xmlTextReaderIsEmptyElement", referenced from:
      _main in osm2pgsql.o
  "_BZ2_bzclose", referenced from:
      _inputClose in input.o
  "_xmlFree", referenced from:
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _main in osm2pgsql.o
  "geos::geom::GeometryFactory::getCoordinateSequenceFactory() const",
referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "geos::io::WKTWriter::write(geos::geom::Geometry const*)", referenced
from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "geos::operation::linemerge::LineMerger::LineMerger()", referenced from:
      _build_geometry in build_geometry.o
  "_BZ2_bzReadClose", referenced from:
      _bzReOpen in input.o
  "_xmlMemoryDump", referenced from:
      _main in osm2pgsql.o
  "geos::operation::linemerge::LineMerger::~LineMerger()", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
  "_BZ2_bzRead", referenced from:
      _readFile in input.o
  "_xmlCheckVersion", referenced from:
      _main in osm2pgsql.o
  "_xmlStrdup", referenced from:
      _StartElement in osm2pgsql.o
      _main in osm2pgsql.o
 
"geos::geom::GeometryFactory::createLineString(geos::geom::CoordinateSequence*)
const", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_pj_free", referenced from:
      _project_exit in reprojection.o
      _project_exit in reprojection.o
  "geos::io::WKTReader::~WKTReader()", referenced from:
      _parse_wkt in build_geometry.o
      _parse_wkt in build_geometry.o
  "_BZ2_bzReadGetUnused", referenced from:
      _bzReOpen in input.o
  "geos::io::WKTWriter::WKTWriter()", referenced from:
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "_xmlStrEqual", referenced from:
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _EndElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
      _StartElement in osm2pgsql.o
  "geos::io::WKTWriter::~WKTWriter()", referenced from:
      _build_geometry in build_geometry.o
      _build_geometry in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
      _get_wkt_simple in build_geometry.o
  "geos::geom::GeometryFactory::GeometryFactory()", referenced from:
      _build_geometry in build_geometry.o
      _parse_wkt in build_geometry.o
      _get_wkt_split in build_geometry.o
      _get_wkt_simple in build_geometry.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [osm2pgsql] Error 1

More updates in the morning after some sleep.

Chris


On Wed, Aug 4, 2010 at 8:35 PM, Dane Springmeyer ‪blake at hailmail.net>‬wrote:
Basically, you've got a mixing of osm2pgsql dependencies which are causing
problems. Macports stuff are not built FAT (aka 32 and 64 bit), and to get
this to work you would have had to to pass +universal to all your port
install commands.

I bet if you uninstall/remove macports you'll be all set. If that is not an
option (understandable), then you'll need to make sure that /usr/lib and
Library/Frameworks/${proj or geos}.framework/unix/lib come first on your
linker lines to avoid the macports trap.

Also your PATH below looks wrong, try:

> export PATH="/usr/local/pgsql/bin/:$PATH"

Try  this (untested):

./autogen.sh
PATH=/Library/Frameworks/GEOS.framework/unix/bin/:/usr/local/pgsql/bin/$PATH
\
CFLAGS="-I/usr/include -I/Library/Frameworks/PROJ.framework/unix/include" \
LDFLAGS="-L/usr/lib -L/Library/Frameworks/PROJ.framework/unix/lib/" \
./configure && make

btw, I've been using homebrew to build osm2pgsql:
 http://mxcl.github.com/homebrew/

Dane
-- 
View this message in context: http://gis.638310.n2.nabble.com/troubles-installing-osm2pgsql-on-Mac-OS-X-10-6-make-fail-tp5374153p5377416.html
Sent from the Developer Discussion mailing list archive at Nabble.com.



More information about the dev mailing list