Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#40150 closed defect (fixed)

rev-upgrade should update dependencies before attempting rebuilds

Reported by: fabian@… Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone: MacPorts 2.3.0
Component: base Version: 2.2.0
Keywords: rev-upgrade Cc: cooljeanius (Eric Gallager)
Port: gobject-introspection

Description

This happened to me recently

$ sudo port install ddd
--->  Computing dependencies for ddd
--->  Cleaning ddd
--->  Scanning binaries for linking errors: 100.0%
--->  Found 60 broken file(s), matching files to ports
--->  Found 3 broken port(s), determining rebuild order
--->  Rebuilding in order
     gobject-introspection @1.36.0
     harfbuzz @0.9.19
     pango @1.34.1 +x11
--->  Computing dependencies for gobject-introspection
--->  Cleaning gobject-introspection
--->  Computing dependencies for harfbuzz
--->  Cleaning harfbuzz
--->  Computing dependencies for pango
--->  Cleaning pango
--->  Scanning binaries for linking errors: 100.0%
--->  Found 60 broken file(s), matching files to ports
--->  Found 3 broken port(s), determining rebuild order
--->  Rebuilding in order
     gobject-introspection @1.36.0
     harfbuzz @0.9.19
     pango @1.34.1 +x11
--->  Computing dependencies for gobject-introspection
--->  Fetching distfiles for gobject-introspection
--->  Verifying checksums for gobject-introspection
--->  Extracting gobject-introspection
--->  Applying patches to gobject-introspection
--->  Configuring gobject-introspection
Error: Failed to configure gobject-introspection, consult /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.36.0/config.log
Error: org.macports.configure for port gobject-introspection returned: configure failure: command execution failed
Please see the log file for port gobject-introspection for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/main.log
Error: Unable to upgrade port: 1
Error rebuilding gobject-introspection
    while executing
"error "Error rebuilding $portname""
    (procedure "revupgrade_scanandrebuild" line 382)
    invoked from within
"revupgrade_scanandrebuild broken_port_counts $opts"
    (procedure "macports::revupgrade" line 5)
    invoked from within
"macports::revupgrade $opts"
    (procedure "action_revupgrade" line 2)
    invoked from within
"action_revupgrade $action $portlist $opts"
    (procedure "action_target" line 96)
    invoked from within
"$action_proc $action $portlist [array get global_options]"
    (procedure "process_cmd" line 93)
    invoked from within
"process_cmd $remaining_args"
    invoked from within
"if { [llength $remaining_args] > 0 } {

    # If there are remaining arguments, process those as a command
    set exit_status [process_cmd $remaining..."
    (file "/opt/local/bin/port" line 4857)

Attachments (3)

main.log (21.0 KB) - added by fabian@… 11 years ago.
log file for details
port_list_active.txt (9.3 KB) - added by fabian@… 11 years ago.
$ port list active
glib-2.0.pc (409 bytes) - added by fabian@… 11 years ago.
/opt/local/lib/pkgconfig/glib-2.0.pc

Download all attachments as: .zip

Change History (18)

Changed 11 years ago by fabian@…

Attachment: main.log added

log file for details

Changed 11 years ago by fabian@…

Attachment: port_list_active.txt added

$ port list active

comment:1 Changed 11 years ago by neverpanic (Clemens Lang)

port list does not what you expect it to do. See wiki:FAQ#portlist. Please attach the output of port installed glib2 and the contents of the file /opt/local/lib/pkgconfig/glib-2.0.pc.

comment:2 Changed 11 years ago by fabian@…

Thank you cal.

$ port installed glib2
The following ports are currently installed:
  glib2 @2.34.3_0 (active)

Changed 11 years ago by fabian@…

Attachment: glib-2.0.pc added

/opt/local/lib/pkgconfig/glib-2.0.pc

comment:3 Changed 11 years ago by neverpanic (Clemens Lang)

Your glib2 is outdated. The current version is 2.36.4. Normally MacPorts should automatically upgrade all dependencies to prevent situations like these. Do you happen to have a Portfile for glib2 in a local Portfile repository? What do port outdated and port file glib2 print? When did you last run selfupdate? glib2 was updated to a 2.36 series release 5 months ago.

comment:4 Changed 11 years ago by fabian@…

$ port outdated
The following installed ports are outdated:
apr                            1.4.6_1 < 1.4.8_0
apr-util                       1.5.1_0 < 1.5.2_1
aria2                          1.16.3_0 < 1.17.1_0
autoconf                       2.69_0 < 2.69_1
automake                       1.13.1_0 < 1.14_0
boost                          1.53.0_1 < 1.54.0_0
fftw-3                         3.3.3_0 < 3.3.3_1
file                           5.12_2 < 5.14_1
gifsicle                       1.70_0 < 1.71_0
git-core                       1.8.3.1_0 < 1.8.3.4_0
glew                           1.9.0_0 < 1.10.0_0
glib2                          2.34.3_0 < 2.36.3_2
glm                            0.9.4.3_0 < 0.9.4.4_0
gnupg                          1.4.13_1 < 1.4.14_0
gnutls                         2.12.19_0 < 3.1.10_0
gource                         0.38_5 < 0.39_1
help2man                       1.41.1_0 < 1.43.3_0
icu                            49.1.2_1 < 51.2_0
ImageMagick                    6.8.0-7_2 < 6.8.6-6_0
kerberos5                      1.11.1_0 < 1.11.3_0
libffi                         3.0.11_1 < 3.0.13_0
libgcrypt                      1.5.0_0 < 1.5.3_0
libgpg-error                   1.10_0 < 1.12_0
libogg                         1.3.0_1 < 1.3.1_0
MPlayer                        1.1_3 < 1.1_5
openjpeg                       1.5.0_5 < 2.0.0_0
p5-app-ack                     1.960.0_1 < 2.40.0_0
p5.12-app-ack                  1.960.0_1 < 2.40.0_0
p5.12-file-next                1.20.0_3 < 1.120.0_0
pngcrush                       1.7.53_0 < 1.7.67_0
serf1                          1.2.0_0 < 1.3.0_0
subversion                     1.7.8_2 < 1.8.1_1
wget                           1.14_2 < 1.14_5
xorg-libXrandr                 1.4.0_0 < 1.4.1_0
xrender                        0.9.7_0 < 0.9.8_0
$ port file glib2
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/glib2/Portfile

It has roughly been a week since I last ran port selfupdate.

comment:5 Changed 11 years ago by neverpanic (Clemens Lang)

Component: portsbase
Keywords: rev-upgrade added; gobject-introspection removed
Owner: changed from macports-tickets@… to cal@…
Status: newassigned
Summary: gobject-introspection configure failsrev-upgrade should update dependencies before attempting rebuilds

The problem is that the rebuild step in rev-upgrade is the equivalent of sudo port -n upgrade --force $broken_port, where the -n flag keeps MacPorts from upgrading any dependencies first.

Until this is fixed, you can work around the problem by running sudo port upgrade glib2 for now.

comment:6 Changed 11 years ago by fabian@…

Thank you, upgrading glib2 worked. I'm glad I could help you find the root cause.

comment:7 Changed 11 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

comment:8 Changed 11 years ago by neverpanic (Clemens Lang)

Milestone: MacPorts Future

I've added a fix to trunk in r109649.

comment:9 Changed 11 years ago by coredumperror@…

If you could expedite this fix into the public release, I'd really appreciate it. I've been trying to install the git-core port, and I always get an error on the gobject-introspection package. It appears to be the same problem that fabian was suffering, but I have it a lot worse. Attempting to upgrade glib2 directly just causes a similar error for one of its dependencies. And attempting to upgrade that dependency causes another error for one of its dependencies. I eventually dug deep enough into this rabbit hole to hit the qt3 port, but it just causes another, apparently unrelated, error.

Fortunately, git works without these dependencies, but gitk (the visual branch viewer) just instantly dies as soon as I attempt to run it.

comment:10 Changed 11 years ago by neverpanic (Clemens Lang)

I can merge this into the current branch for the 2.2.x series, but the next release will probably not be until the Mavericks release.

comment:11 Changed 11 years ago by neverpanic (Clemens Lang)

Running sudo port upgrade outdated should always be a valid workaround for this problem, though -- maybe you should try that, unless you have a specific reason not to.

comment:12 Changed 11 years ago by neverpanic (Clemens Lang)

Milestone: MacPorts FutureMacPorts 2.2.1
Resolution: fixed
Status: assignedclosed

In r112424.

comment:13 Changed 11 years ago by neverpanic (Clemens Lang)

Milestone: MacPorts 2.2.1MacPorts Future
Resolution: fixed
Status: closedreopened

Reverted in r112461 because it wasn't completely correct.

comment:14 Changed 11 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: reopenedclosed

Should be fixed without the problems in r112462 and r112464.

comment:15 Changed 11 years ago by jmroot (Joshua Root)

Milestone: MacPorts FutureMacPorts 2.3.0
Note: See TracTickets for help on using tickets.