Ticket #13072 (closed defect: fixed)
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
Change History
comment:1 Changed 6 years ago by afb@…
AFAIK, the duplicate symbols are from a compiler bug with extern inline (from glib2 headers)
comment:2 Changed 6 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)
comment:3 Changed 6 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 >>>
comment:4 Changed 5 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.


Build output