Opened 12 years ago

Closed 6 years ago

#33477 closed defect (worksforme)

selfupdate failed from 2.0.3 to 2.0.4 @ 10.6.8, xcode 3.2

Reported by: haoweipeng@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: base Version: 2.0.3
Keywords: Cc:
Port:

Description (last modified by ryandesign (Ryan Carsten Schmidt))

It seems the script delete the /release/base/ directory, and then try to enter this dir.

port -v selfupdate
...
...
deleting base/Makefile.in
deleting base/LICENSE
deleting base/HACKING
deleting base/Doxyfile.in
deleting base/ChangeLog
deleting base/

sent 60 bytes  received 677864 bytes  271169.60 bytes/sec
total size is 32688921  speedup is 48.22
receiving file list ... done

sent 37 bytes  received 70 bytes  71.33 bytes/sec
total size is 7654183  speedup is 71534.42
--->  MacPorts base is outdated, installing new version 2.0.4
Installing new MacPorts release in /opt/local as root:admin; permissions 0755; Tcl-Package in /Library/Tcl

sh: line 0: cd: /opt/local/var/macports/sources/XXXX/macports/release/base: No such file or directory
shell command "cd /opt/local/var/macports/sources/XXXX/macports/release/base && CC=/usr/bin/cc ./configure --prefix=/opt/local --with-tclpackage=/Library/Tcl --with-install-user=root --with-install-group=admin --with-directory-mode=0755 --enable-readline && make && make install SELFUPDATING=1" returned error 1
Error: /opt/local/bin/port: port selfupdate failed: Error installing new MacPorts base: shell command failed (see log for details)

Change History (6)

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

Component: portsbase
Description: modified (diff)
Summary: selfupdate failed from 2.0.3 to 2.0.4 @ 10.6.8, xcodec 3.2selfupdate failed from 2.0.3 to 2.0.4 @ 10.6.8, xcode 3.2
Type: updatedefect

I am curious: what is XXXX and why does it appear that MacPorts is trying to download its sources from there?

comment:2 in reply to:  1 Changed 12 years ago by haoweipeng@…

Replying to ryandesign@…:

I am curious: what is XXXX and why does it appear that MacPorts is trying to download its sources from there?

this is a mirror built by XXXX for internal usage.

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

Description: modified (diff)

I am redacting the server name as requested by haoweipeng.

comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

It sounds like this server does not have a complete / correct copy of the MacPorts source code. Since we don't know anything about this server, could you instead try the normal rsync.macports.org server, or one of the other servers listed at wiki:Mirrors#MacPortsSource?

comment:5 Changed 12 years ago by GregoryEAllen (Greg Allen)

I'm having the same problem. It appears to have been introduced into macports between versions 2.0.3 and 2.0.4, and occur only on Xcode 3.2. I'm using OS X 10.6.3 (10D573) and Xcode 3.2.4 (1708). (Don't ask. :)

It appears that selfupdate rsync deletes the base directory (containing macports) before macports can build and install.

MacPorts base version 2.0.4 installed,
MacPorts base version 2.1.1 downloaded.
--->  Updating the ports tree
Synchronizing local ports tree from rsync://mirror/macports/release/ports/
receiving file list ... done
./
deleting base/tests/test/xcodeversion/master
...

When you get to building macports, you get:

--->  MacPorts base is outdated, installing new version 2.1.1
Installing new MacPorts release in /opt/packages/macports as root:admin; permissions 0755; Tcl-Package in /Library/Tcl

sh: line 0: cd: /opt/packages/macports/var/macports/sources/mirror/macports/release/base: No such file or directory
shell command "cd /opt/packages/macports/var/macports/sources/mirror/macports/release/base && CC=/usr/bin/cc ./configure --prefix=/opt/packages/macports --with-tclpackage=/Library/Tcl --with-install-user=root --with-install-group=admin --with-directory-mode=0755 --enable-readline && make && make install SELFUPDATING=1" returned error 1
Error: /opt/bin/port: port selfupdate failed: Error installing new MacPorts base: shell command failed (see log for details)

It can't cd to macports/release/base because rsync deleted it.

Note that I am also using a local mirror, but it doesn't appear to be related to that. I've verified that our mirror is mirroring correctly.

I was able to work around this issue by removing "--delete-after" from rsync_options in etc/macports/macports.conf

After doing that, I could selfupdate to the latest version.

I'm not sure it's worth finding and fixing, given that it's for really old versions and there's an easy workaround. However this may help zero in on it, and may also help others that are having this problem.

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

Resolution: worksforme
Status: newclosed

I don't know why this problem happened for you, but because of how old this ticket is, and the fact that we have users successfully updating on all versions of macOS that we run on, back to 10.4, I'm going to close this ticket.

These days, we want users to rsync a signed tarball, base.tar, rather than individual files and directories. If you successfully get the base.tar tarball and the signature verification passes, it should contain all the files needed to compile MacPorts.

Note: See TracTickets for help on using tickets.