#38610 closed defect (fixed)
orbit2: error: implicit declaration of function 'g_mutex_free' is invalid in C99
Reported by: | jon22706@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.3 |
Keywords: | Cc: | cooljeanius (Eric Gallager), ryandesign (Ryan Carsten Schmidt), dbevans (David B. Evans) | |
Port: | orbit2 |
Description
org.macports.build for port orbit2 returned: command execution failed is the error I get.
Attachments (2)
Change History (14)
Changed 12 years ago by jon22706@…
comment:1 Changed 12 years ago by cooljeanius (Eric Gallager)
Changed 12 years ago by jon22706@…
Attachment: | main.2.log added |
---|
comment:3 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Port: | orbit2 added |
---|---|
Summary: | Orbit2 Failed to Install → orbit2: error: implicit declaration of function 'g_mutex_free' is invalid in C99 |
comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
This appears to be part of the deprecated glib thread API.
https://developer.gnome.org/glib/2.32/glib-Deprecated-Thread-APIs.html
We need to either figure out how to re-enable that API, or rewrite orbit2 to use the new glib thread API.
comment:5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Here is the upstream bug report: https://bugzilla.gnome.org/show_bug.cgi?id=696900
comment:6 Changed 12 years ago by cooljeanius (Eric Gallager)
It looks like it's also due to -Werror
; would disabling -Werror
temporarily until upstream fixes this work as a workaround?
comment:8 Changed 12 years ago by cooljeanius (Eric Gallager)
Replying to jon22706@…:
How would I disable -Werror?
I was referring to disabling it in the Portfile, although I suppose you could try doing that yourself...
comment:9 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | egall@… ryandesign@… devans@… added |
---|
Even once you remove -Werror
you still have:
:info:build linc.c:464:4: error: use of undeclared identifier 'G_THREAD_PRIORITY_NORMAL' :info:build G_THREAD_PRIORITY_NORMAL, &error); :info:build ^
I don't think the error messages are wrong; I think ORBit2 uses an old thread interface of glib which no longer exists; the compiler is quite right that trying to use functions and constants that don't exist won't work.
ORBit2 seems to be dead so I'm not sure that its developers, if any are still around to read the project's bug reports, will do anything about this.
The correct solution may be to update all the ports that currently use ORBit2 to no longer do so, and then remove ORBit2 from MacPorts. Those ports are:
- bonobo-activation
- gconf
- gnome-platform-suite
- libbonobo
- libgtkhtml3
- py-orbit
- py25-orbit
- py26-orbit
- py27-orbit
- xmlroff
py*-orbit obviously isn't much use without orbit itself, so this would also affect ports depending on py*-orbit, which includes:
- gnome-bindings-python
- py25-gnome
- py26-gnome
- py27-gnome
comment:10 Changed 12 years ago by dbevans (David B. Evans)
In fact, since libbonobo depends unconditionally on orbit2 and libgnome, libgnomeui and friends depend on libbonobo any GNOME 2 app that uses these libraries (still quite a few) would be impacted by the suggested removal.
The symbols in question are deprecated in the latest version of glib2.
Fix committed in r104857 which allows the use of the deprecated symbols by removing all instances of -DG_DISABLE_DEPRECATED.
comment:11 Changed 12 years ago by dbevans (David B. Evans)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:12 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Oh neat! Thanks.
Looks like gnome-vfs may need something similar: #38657.
This was not a clean build attempt. Do
sudo port clean orbit2
and then try again, and if that still fails, attach the main.log from that attempt.