Opened 6 years ago

Closed 5 years ago

#56802 closed defect (worksforme)

gobject-introspection fails to install on 10.14 18A326h due to tar error

Reported by: rben01 (Robert) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version: 2.5.3
Keywords: mojave Cc: tthoma24 (Teddy Thomas), markemer (Mark Anderson)
Port: gobject-introspection

Description (last modified by rben01 (Robert))

port install gobject-introspection fails due to an issue with tar. This issue persists after a clean reinstall of MacPorts and also if MacPorts is configured with --with-tar=gnutar and --with-gnutar=gnutar, so it's not specifically an issue with macOS's /usr/bin/tar. Logs below.

Attachments (1)

main.log (223.8 KB) - added by rben01 (Robert) 6 years ago.
port install gobject-introspection error logs

Download all attachments as: .zip

Change History (19)

Changed 6 years ago by rben01 (Robert)

Attachment: main.log added

port install gobject-introspection error logs

comment:1 Changed 6 years ago by kencu (Ken)

You're going to soon be asked not to discuss pre-release software on MacPorts.

However -- I notice homebrew does discuss such things, and in doing so, when a new MacOS version comes out, a number of things have already been fixed prior to the roll-out, whereas we scramble to catch up.

It seems like there _should_ be some way to work through these MacPorts things on these beta MacOS versions, somehow, somewhere...

comment:2 Changed 6 years ago by rben01 (Robert)

Yes, I did consider the dilemma, but figured it would be better for MacPorts if these issues could be sorted out before the official release. Obviously this issue is low priority, at least until the official release starts getting close.

comment:3 Changed 6 years ago by mf2k (Frank Schima)

Cc: dbevans removed
Keywords: mojave added; x86_64 Mojave removed
Milestone: MacPorts 2.6.0
Owner: set to dbevans
Status: newassigned

The Milestone field is for use by Macports team members only, please do not set it.

comment:4 Changed 6 years ago by rben01 (Robert)

Description: modified (diff)

comment:5 Changed 6 years ago by rben01 (Robert)

Description: modified (diff)

comment:6 Changed 6 years ago by jmroot (Joshua Root)

Likely something to do with the fact that the tarball contains both gi-GITypelib.html and gi-gitypelib.html in docs/reference/html. MacPorts isn't doing anything unusual here, and I'm guessing your tar would also fail to extract this tarball when run manually. So you should report this regression to Apple.

comment:7 Changed 6 years ago by rben01 (Robert)

Since most Macs, on any macOS version, are on a case insensitive file system, I don't see how this could ever work. Also, this failed with a separately installed version of tar (specifically, conda-forge's tar from https://anaconda.org/conda-forge/tar).

comment:8 Changed 6 years ago by jmroot (Joshua Root)

http://www.gnu.org/software/tar/manual/html_node/multiple.html#SEC61

If multiple tar implementations have the same issue on this OS, that's all the more reason to report the bug to Apple.

comment:9 in reply to:  7 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to rben01:

Since most Macs, on any macOS version, are on a case insensitive file system, I don't see how this could ever work.

Previously, I think what we observed is that when extracting, later files in the archive would overwrite earlier files in the archive. Apparently it's no longer willing to do that now.

I'd also recommend reporting the problem to the developers of gobject-introspection. They should not distribute archives that require a case-sensitive filesystem to be extracted.

comment:10 Changed 6 years ago by ttww (Thomas Welsch)

Hi,

I had the same problem. Nothing helps, tried some permissions, "different" TARs (bsdtar, tar) compiled from sources leads to the same problem... After reading the reason (case-insensitive file system ( thanks apple :-( ) and some "ugly" tar files), I where able compile everything with that trick:

  1. Create an empty disc image: hdiutil create -size 4g -type SPARSEBUNDLE -fs "Case-sensitive Journaled HFS+" -volname build /Users/XXXX/build.sparsebundle
  2. Mount the disk image: hdiutil attach /Users/XXXX/build.sparsebundle -mount required -owners off
  3. Copy the content of /opt/local/var/macports to /Volumes/build/macports
  4. Remove the /Volumes/build/macports
  5. Symlink with ln -s /Volumes/build/macports /opt/local/var/macports

I had some problems with the permissions and ACL, at the end I did everything as root and that works (even create the image...)

Anyway, now I have my ImageMagick back :-)

comment:11 Changed 6 years ago by rben01 (Robert)

So is this not a Mojave issue at all? Is it just case insensitive file systems? I’d only attempted installing this package on Mojave so I’d assumed that that was the issue. Can anyone confirm whether it’s worked on past versions of macOS in case insensitive file systems?

comment:12 Changed 6 years ago by jmroot (Joshua Root)

Yes it works on released macOS versions.

comment:13 Changed 6 years ago by AP1010

This seems to be a general problem in Mojave. Not specific to any particular port. I saw it with AquaTerm. The following example works in High Sierra, but fails in Mojave beta 4:

  1. Create two tar archives. One containing a file named 'file', the second one containing a file named 'File'
  2. Extract first archive to empty directory
  3. Try extracting the second one into the same directory.
  4. it fails with "Can't unlink already-existing object"
Last edited 6 years ago by AP1010 (previous) (diff)

comment:14 Changed 6 years ago by tthoma24 (Teddy Thomas)

Cc: tthoma24 added

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

Yes, this is not a MacPorts bug and you should report bugs in prerelease Apple software to Apple.

comment:16 Changed 6 years ago by markemer (Mark Anderson)

Cc: markemer added

comment:17 Changed 6 years ago by markemer (Mark Anderson)

Thomas's workaround works the best for now. But we should make sure we all open radars against this.

comment:18 Changed 5 years ago by dbevans (David B. Evans)

Resolution: worksforme
Status: assignedclosed

Build of latest gobject-introspection 1.58.0 builds without error on 10.14 buildbot. If you're still having problems see above comments for work arounds.

Note: See TracTickets for help on using tickets.