New Ticket     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #13072 (closed defect: fixed)

Opened 2 years ago

Last modified 11 months ago

py25-gobject fails to build on 10.5 (extern inline)

Reported by: william@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.5.2
Keywords: Cc:
Port:

Description

I had the following build failure today while attempting a fresh install of kdepim3. The py25-gobject port fails to build, with the output which I will attach as a text file in a moment.

I have been seeing these "duplicate symbol _whatever" problems when attempting to build other programs too (in particular, carbon-xemacs), so I suspect they are a side-effect of some change in Apple's toolchain of XCode 3.0. I think they may well be to do with inline functions, which perhaps gain a callable instance in the object file which uses them (as well as being inlined). (Perhaps with the old apple toolchain (XCode 2.4.1) these instances were discarded).

Attachments

foo Download (7.3 KB) - added by william@… 2 years ago.
Build output

Change History

Changed 2 years ago by william@…

  • attachment foo Download added

Build output

Changed 2 years ago by afb@…

AFAIK, the duplicate symbols are from a compiler bug with extern inline (from glib2 headers)

Changed 2 years ago by afb@…

  • summary changed from py25-gobject fails to build on 10.5 to py25-gobject fails to build on 10.5 (extern inline)

Related to #13006 and #13094 et al.

Changed 2 years ago by macports@…

I had the same issue, but now the compilation error has been fixed with the latest glib2.

However py25-gobject fails when used in python:

Python 2.5.1 (r251:54863, Oct 26 2007, 16:46:58) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import gobject
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_python_py25-gobject/work/destroot/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/__init__.py", line 30, in <module>
  File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_python_py25-gobject/work/destroot/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/constants.py", line 22, in <module>
ImportError: dlopen(/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.so, 2): Symbol not found: _PyGBoxed_Type
  Referenced from: /opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.so
  Expected in: flat namespace

>>>

Changed 2 years ago by petr.snyder@…

Probably the very same issue here (PPC, Leopard, XCode3, macports 1.6.0), affects a build of gnucash, which has avahi somewhere in its dependency tree. Avahi's configure script stops to report that it cannot find py-gtk. The configure script runs a short python-script to check whether py-gtk is available:

26522 prog="
26523 import sys
26524 try:
26525         import gtk
26526 except ImportError:
26527         sys.exit(1)
26528 except:
26529         sys.exit(0)
26530 sys.exit(0)"

26531 if $PYTHON -c "$prog" 1>&5 2>&5
26532   then
26533     eval "py_cv_mod_$py_mod_var=yes"
26534   else
26535     eval "py_cv_mod_$py_mod_var=no"
26536   fi
26537
26538 fi

I run Python (the macport-installed one, /opt/local/bin/python2.5) in interactive mode and tried

Python 2.5.1 (r251:54863, Dec 21 2007, 17:37:02) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

>>>import sys
>>>import gtk

and got this:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_python_py25-gtk/work/destroot/opt/local/lib/python2.5/site-packages/gtk-2.0/gtk/__init__.py", line 38, in <module>
  File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_python_py25-gobject/work/destroot/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/__init__.py", line 30, in <module>
  File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_python_py25-gobject/work/destroot/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/constants.py", line 22, in <module>
ImportError: dlopen(/opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.so, 2): Symbol not found: _PyGBoxed_Type
  Referenced from: /opt/local/lib/python2.5/site-packages/gtk-2.0/gobject/_gobject.so
  Expected in: flat namespace

I think the defect module "py25-gobject" make the configure script fail, and "py25-gtk" and other python modules might be broken, too.

Changed 2 years ago by petr.snyder@…

The last comments should move to #13337.

Changed 2 years ago by jmpp@…

  • milestone set to Port Bugs

Changed 2 years ago by afb@…

  • status changed from new to closed
  • resolution set to fixed

Fixed, r32469.

Changed 11 months ago by anonymous

  • milestone Port Bugs deleted

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.