Opened 11 years ago

Closed 11 years ago

#39864 closed defect (duplicate)

port installation fails during extraction after update

Reported by: frozencemetery (Robbie Harwood) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: base Version: 2.2.0
Keywords: Cc:
Port:

Description

On any port following update to 2.2.0, I get the following:

$ port install coreutils 
--->  Computing dependencies for autoconf
--->  Extracting autoconf
Error: org.macports.extract for port autoconf returned: command execution failed
Please see the log file for port autoconf for details:
    $prefix/var/macports/logs/_prefix_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_autoconf/autoconf/main.log 
Error: Unable to upgrade port: 1
Error: Unable to execute port: upgrade autoconf failed

Full log is attached. System is Mac OS 10.6. Thanks!

Attachments (1)

main.log (22.1 KB) - added by frozencemetery (Robbie Harwood) 11 years ago.

Download all attachments as: .zip

Change History (13)

Changed 11 years ago by frozencemetery (Robbie Harwood)

Attachment: main.log added

comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

So the problem is:

:debug:extract Executing command line:  cd "$prefix/var/macports/build/_prefix_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_autoconf/autoconf/work" && $prefix/bin/xz -dc '$prefix/var/macports/distfiles/autoconf/autoconf-2.69.tar.xz' | /usr/bin/gnutar --no-same-owner -xf -
:info:extract /usr/bin/gnutar: autoconf-2.69: Cannot mkdir: Operation not permitted

Somehow $prefix isn't getting expanded. Any idea why that is? Have you made any unusual changes to your macports.conf? What's the value of prefix in macports.conf?

comment:2 Changed 11 years ago by frozencemetery (Robbie Harwood)

Actually that's just me obfuscating my value of $prefix. $prefix gets correctly expanded. Sorry about that!

comment:3 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Oh. Ok. Well then the problem is that you're running "port install coreutils" instead of "sudo port install coreutils". Unless you've installed MacPorts from source with a different user, MacPorts needs to run with elevated privileges.

comment:4 Changed 11 years ago by frozencemetery (Robbie Harwood)

MacPorts is installed as non-root (the user that ran that command).

comment:5 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Do you remember exactly what arguments you supplied to the ./configure script?

comment:6 in reply to:  1 Changed 11 years ago by larryv (Lawrence Velázquez)

Replying to ryandesign@…:

So the problem is:

:debug:extract Executing command line:  cd "$prefix/var/macports/build/_prefix_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_autoconf/autoconf/work" && $prefix/bin/xz -dc '$prefix/var/macports/distfiles/autoconf/autoconf-2.69.tar.xz' | /usr/bin/gnutar --no-same-owner -xf -
:info:extract /usr/bin/gnutar: autoconf-2.69: Cannot mkdir: Operation not permitted

I don’t suppose your installation is symlinked?

comment:7 Changed 11 years ago by frozencemetery (Robbie Harwood)

No, it's not symlinked. Those are real directories. My command would have been something like

./configure --with-no-root-privileges --prefix=$prefix

I should note that previous selfupdates have gone off without a hitch.

comment:8 Changed 11 years ago by frozencemetery (Robbie Harwood)

While we're talking about permissions, it's worth noting that I ran

chown -R $(id -n -u) *
chmod -R u+rwx *

on $prefix before doing any of this.

comment:9 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

If you're going to use --with-no-root-privileges you probably need to set --with-install-user and --with-install-group too. I'm not sure if you also need to set --with-macports-user.

comment:10 in reply to:  7 ; Changed 11 years ago by larryv (Lawrence Velázquez)

Replying to rharwood@…:

I should note that previous selfupdates have gone off without a hitch.

Could you try again after adding sandbox_enable no to macports.conf?

comment:11 in reply to:  10 ; Changed 11 years ago by frozencemetery (Robbie Harwood)

Replying to larryv@…:

Replying to rharwood@…:

I should note that previous selfupdates have gone off without a hitch.

Could you try again after adding sandbox_enable no to macports.conf?

Alright, that worked. This is an Server install, with homedirs off a disk in /Volumes. Server has decided that the best way to present this information is to hand me my homedir as /Network/Servers/<servername>/Volumes/<drivename>/<diskname>/<my homedir> rather than just the path in /Volumes. As a result, <servername> is a symlink to /. The fix for #39850 will probably work. Sorry for the trouble; now off to bother root…

comment:12 in reply to:  11 Changed 11 years ago by larryv (Lawrence Velázquez)

Resolution: duplicate
Status: newclosed
Note: See TracTickets for help on using tickets.