#68919 closed defect (fixed)
brotli @1.1.0_0+universal: Failed to destroot
Reported by: | thetrial (alabay) | Owned by: | raimue (Rainer Müller) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | legacy-os, sierra | Cc: | herbygillot (Herby Gillot) |
Port: | brotli |
Description
Interesting error, tried twice, but:
/opt/local/lib/libbrotlicommon.1.1.0.dylib differs in /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_brotli/brotli/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_archivers_brotli/brotli/work/destroot-x86_64 and cannot be merged
Attachments (1)
Change History (6)
comment:1 Changed 11 months ago by ryandesign (Ryan Carsten Schmidt)
Owner: | changed from raimue@… to raimue |
---|---|
Port: | brotli added |
comment:2 Changed 11 months ago by ryandesign (Ryan Carsten Schmidt)
Actually... that error shouldn't be happening for any dylib file, so please attach the main.log file so we can see why it got to this code path that it shouldn't have gotten to.
Changed 11 months ago by thetrial (alabay)
The work-directory plus logfile.
comment:3 Changed 11 months ago by ryandesign (Ryan Carsten Schmidt)
Cc: | herbygillot added |
---|
Ok, the log shows merging this file the intended way (using lipo
) failed because the two files have the same architectures (i386) and can't be in the same fat output file
. That shouldn't be, of course. This port includes the muniversal portgroup which means it intends to build multiple times, once for each architecture. What has actually happened, though, is that each of the two builds have built for both architectures already:
% lipo -info brotli/work/destroot-*86*/opt/local/lib/lib*1.1.0.dylib Architectures in the fat file: brotli/work/destroot-i386/opt/local/lib/libbrotlicommon.1.1.0.dylib are: i386 x86_64 Architectures in the fat file: brotli/work/destroot-i386/opt/local/lib/libbrotlidec.1.1.0.dylib are: i386 x86_64 Architectures in the fat file: brotli/work/destroot-i386/opt/local/lib/libbrotlienc.1.1.0.dylib are: i386 x86_64 Architectures in the fat file: brotli/work/destroot-x86_64/opt/local/lib/libbrotlicommon.1.1.0.dylib are: x86_64 i386 Architectures in the fat file: brotli/work/destroot-x86_64/opt/local/lib/libbrotlidec.1.1.0.dylib are: x86_64 i386 Architectures in the fat file: brotli/work/destroot-x86_64/opt/local/lib/libbrotlienc.1.1.0.dylib are: x86_64 i386
A probable cause for this is where the log shows the use of -DCMAKE_OSX_ARCHITECTURES="x86_64;i386"
. While we could investigate how to remove that, the fact that the build succeeded for both architectures simultaneously raises the question about why the muniversal portgroup is being used at all. It was just added to the port yesterday and apparently it was intended to resolve #64784, but obviously doesn't do so correctly.
comment:4 Changed 11 months ago by kencu (Ken)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:5 Changed 11 months ago by kencu (Ken)
reverted until someone can test it on a system newer than 2006
Could you please attach those two files so we can see how they differ?