Bug 165173

Summary: rpmlint does not recognise other-arch binaries
Product: [Fedora] Fedora Reporter: Paul Howarth <paul>
Component: rpmlintAssignee: Ville Skyttä <scop>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 4CC: extras-qa
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 0.71-3 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-01-18 19:53:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Paul Howarth 2005-08-04 21:16:22 UTC
Description of problem:
When I run rpmlint on an x86 machine against an x86_64 package, the file format
of the binaries is not recognised and spurious "statically-linked-binary" errors
are produced. I wouldn't be surprised if other arch-mixes result in similar
behaviour.

Version-Release number of selected component (if applicable):
rpmlint-0.70-4.fc4.i386

How reproducible:
Every time.


Steps to Reproduce:
$ curl --remote-name
http://www.mirrorservice.org/sites/download.fedora.redhat.com/pub/fedora/linux/extras/4/x86_64/autossh-1.3-2.fc4.x86_64.rpm
(nice, small package, but any should do)
$ rpmlint -i autossh-1.3-2.fc4.x86_64.rpm

  
Actual results:
file format not recognized for
/tmp/autossh-1.3-2.fc4.x86_64.rpm.19688/usr/bin/autossh in /usr/bin/autossh
E: autossh statically-linked-binary /usr/bin/autossh
The package installs a statically linked binary or object file.

Usually this is a bug. Otherwise, please contact
<flepied at mandriva.com> about this so that this error gets included
in the exception file for rpmlint. With that, rpmlint will ignore
this bug in the future.


Expected results:
No output

Comment 1 Ville Skyttä 2005-08-11 17:55:16 UTC
The root cause is that objdump doesn't grok other-arch binaries, and rpmlint  
doesn't stop checking stuff even if it notices that objdump didn't produce  
usable results.  
  
The bogus messages should go in these cases though; I looked into it and  
found that fixing it is pretty trivial, but mainly due to Python's indentation 
requirements, results in a big patch that I don't feel like maintaining right 
now.  I've let upstream know about this, let's see what they think first.  
Will roll a 0.71 package without touching this issue, and revisit in the next 
update.  

Comment 2 Ville Skyttä 2006-01-17 21:11:55 UTC
rpmlint-0.71-3.fc5 (soon in Extras devel, and later probably in FE-4) now outputs:

$ rpmlint -i autossh-1.3-2.fc4.x86_64.rpm
W: autossh objdump-failed objdump:
/tmp/autossh-1.3-2.fc4.x86_64.rpm.6586/usr/bin/autossh: File format not recognized
Executing objdump on this file failed, all checks could not be run.


Comment 3 Paul Howarth 2006-01-18 11:20:59 UTC
That's a big improvement and I'm personally happy enough with that.

I guess it's unlikely that objdump will ever be able to grok all possible
architectures, so I think this bug can probably be closed now.

Comment 4 Ville Skyttä 2006-01-18 19:53:19 UTC
Yep, agreed.  Not closed yet because the bug was reported against FC4 and it's
still unfixed there, but the fixed version will trickle there too in the near
future once the version in devel has received some testing.