Changes between Initial Version and Version 1 of Ticket #35323


Ignore:
Timestamp:
Jul 26, 2012, 12:18:35 PM (12 years ago)
Author:
ryandesign (Ryan Carsten Schmidt)
Comment:

The log shows missing symbols:

Undefined symbols for architecture x86_64:
  "boost::system::generic_category()", referenced from:
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_datasource.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_datasource_cache.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_feature.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_featureset.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_filter.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_font_engine.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_geometry.os
      ...
  "boost::system::system_category()", referenced from:
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_datasource.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_datasource_cache.os
      boost::mutex::mutex()in mapnik_datasource_cache.os
      boost::mutex::lock()    in mapnik_datasource_cache.os
      boost::unique_lock<boost::mutex>::lock()   in mapnik_datasource_cache.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_feature.os
      global constructors keyed to _ZN12_GLOBAL__N_12_1Ein mapnik_featureset.os
      ...
ld: symbol(s) not found for architecture x86_64

This could be an incompatibility with boost 1.50, to which the boost port was recently updated; we've seen such incompatibilities in other ports and it's not uncommon for new boost versions to break other ports. You could try downgrading to boost 1.49.

However, before you do so, note that the log also says:

DEBUG: Skipping completed org.macports.archivefetch (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.
DEBUG: Skipping completed org.macports.fetch (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.
DEBUG: Skipping completed org.macports.checksum (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.
DEBUG: Skipping completed org.macports.extract (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.
DEBUG: Skipping completed org.macports.patch (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.
DEBUG: Skipping completed org.macports.configure (py26-mapnik)
DEBUG: Privilege de-escalation not attempted as not running as root.

The "Skipping completed" lines show that you had not cleaned before trying this build, so its results cannot be trusted. Please "sudo port clean py26-mapnik" and then try again. If it still fails with undefined symbols, then proceed as above.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #35323

    • Property Owner changed from macports-tickets@… to dbsgeo@…
    • Property Summary changed from py26-mapnik fails to install to py26-mapnik: undefined symbols boost::system::generic_category boost::system::system_category
  • Ticket #35323 – Description

    initial v1  
    22I already had installed some of the ports that py26-mapnik uses:
    33
     4{{{
    45babbos-mac:~ babbo$ port installed
    5 
    66The following ports are currently installed:
    7 
    87  boost @1.50.0_0+no_single+no_static+python26 (active)
    98  bzip2 @1.0.6_0 (active)
     
    4948  xorg-xproto @7.0.23_0 (active)
    5049  zlib @1.2.7_0 (active)
     50}}}
    5151
    5252Then I just entered the following commands:
    5353
     54{{{
    5455sudo port select --set python python26
    55 
    5656sudo port -d install py26-mapnik
     57}}}
    5758
    5859I am using: