Bug 1569686

Summary: Installation failure with binutils-ppc64le-linux-gnu
Product: [Fedora] Fedora Reporter: Major Hayden 🤠 <mhayden>
Component: cross-binutilsAssignee: David Howells <dhowells>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 27CC: dan, dhowells, james, lkundrak
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: cross-binutils-2.30-5.fc28 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-07-31 18:01:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Major Hayden 🤠 2018-04-19 19:34:42 UTC
Installing the `binutils-ppc64le-linux-gnu` package leads to an error in the package transaction:

Running transaction
  Preparing        :                                                                                                              
  Installing       : binutils-powerpc64le-linux-gnu-2.29.1-1.fc27.x86_64                                                          
  Installing       : gcc-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                
  Installing       : gcc-c++-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                            
  Installing       : gcc-ppc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                    
  Installing       : gcc-c++-ppc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                
  Installing       : binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64                                                              
Error unpacking rpm package binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64
Error unpacking rpm package binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64
error: unpacking of archive failed on file /usr/ppc64le-linux-gnu: cpio: File from package already exists as a directory in system
  Running scriptlet: binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64                                                              
error: binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64: install failed
Running as unit: run-ra4b659e3fea54b74ae83fadc9ade8d57.service
binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64 was supposed to be installed but is not!
  Verifying        : binutils-ppc64le-linux-gnu-2.29.1-1.fc27.x86_64                                                              
  Verifying        : binutils-powerpc64le-linux-gnu-2.29.1-1.fc27.x86_64                                                          
  Verifying        : gcc-c++-ppc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                
  Verifying        : gcc-c++-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                            
  Verifying        : gcc-ppc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                    
  Verifying        : gcc-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64                                                                


However, if I ask for the binutils-powerpc64le-linux-gnu, everything installs properly:

  Preparing        :                                                     
  Installing       : binutils-powerpc64le-linux-gnu-2.29.1-1.fc27.x86_64 
  Installing       : gcc-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64       
  Installing       : gcc-c++-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64   
  Running scriptlet: gcc-c++-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64   
Running as unit: run-ref4236807d2e4d719a8ec8041be25d37.service
  Verifying        : binutils-powerpc64le-linux-gnu-2.29.1-1.fc27.x86_64 
  Verifying        : gcc-c++-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64   
  Verifying        : gcc-powerpc64le-linux-gnu-7.2.1-1.fc27.x86_64       

When the installation does fail, I am left with directories like this:

$ ls -al /usr/ppc*
lrwxrwxrwx. 1 root root   21 Nov  6 16:35 '/usr/ppc64le-linux-gnu;5ad8ea11' -> powerpc64le-linux-gnu
lrwxrwxrwx. 1 root root   19 Nov  6 16:35 '/usr/ppc64-linux-gnu;5ad8ea11' -> powerpc64-linux-gnu

/usr/ppc64le-linux-gnu:
total 8
drwxr-xr-x.  2 root root 4096 Apr 19 14:12 .
drwxr-xr-x. 22 root root 4096 Apr 19 14:12 ..

/usr/ppc64-linux-gnu:
total 8
drwxr-xr-x.  2 root root 4096 Apr 19 14:12 .
drwxr-xr-x. 22 root root 4096 Apr 19 14:12 ..

Comment 1 James 2018-06-15 22:08:31 UTC
Seen here too, on one of my machines that also has hppa and sparc64 binutils installed. Another machine, without these, installs the ppc64 packages fine.

Comment 2 James 2018-06-15 22:09:59 UTC
Sorry -- forgot to add this is on F28. binutils-ppc64-linux-gnu-2.29.1-4.fc28.x86_64

Comment 3 David Howells 2018-07-13 09:16:20 UTC
I have fixed the generation of the ppc* symlink rpms to not mark as belonging to those rpms stuff behind the directory symlinks that were in the powerpc* rpms on which they depended.

Comment 4 Fedora Update System 2018-07-13 09:16:54 UTC
cross-binutils-2.30-5.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-4361393087

Comment 5 Fedora Update System 2018-07-31 18:01:15 UTC
cross-binutils-2.30-5.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.