Bug 173818

Summary: binary contains a hardcoded rpath on x86_64 and fails to find the "correct" libGl.so.1 due to that
Product: [Fedora] Fedora Reporter: Thorsten Leemhuis <fedora>
Component: ppracerAssignee: Nils Philippsen <nphilipp>
Status: CLOSED ERRATA 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: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-02-17 15:15:53 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:
Bug Depends On:    
Bug Blocks: 162161    

Description Thorsten Leemhuis 2005-11-21 15:58:56 UTC
Description of problem:
The ppracer binary contains the hardcoded rpath /usr/lib64 in it. This is bad
because it overrides the normal ldconfig way to find the correct librarys. 

This results in a problem that shows up together with the nvidia or ati drivers
from livna.org. The libGL.so.1 for the ati drivers for example is placed in
/usr/lib64/ati-fglrx/ and activated by having a line with
"/usr/lib64/ati-fglrx/" on top of /etc/ld.so.conf. This normaly works fine. But
ppracer contains this hardcoded rpath and therefor uses the libGL.so.1 from
/usr/lib64. Therefore ppracer won't work on x86_64-systems with the ati or
nvidia drivers from livna.

Version-Release number of selected component (if applicable):
0.3.1-4

How reproducible:
Always

Steps to Reproduce:
$/usr/lib/rpm/check-rpaths-worker /usr/bin/ppracer
[...]
ERROR   0001: file '/usr/bin/ppracer' contains a standard rpath '/usr/lib64' in
[/usr/lib64]
  
Additional info:
The rpatch is a result of a bug in fontconfig:
$ freetype-config --libs
-L/usr/lib64 -Wl,--rpath -Wl,/usr/lib64 -lfreetype -lz

This is fixed in devel 
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=160247
but it seems we won't get this fixed in FC3 or FC4:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139199

Suggested workaround:
- in configure sed-away the rpath with something like
/usr/bin/freetype-config --libs | sed 's|-Wl,--rpath -Wl,/usr/lib64 ||'

- sed away the rpath in the Makefiles after running configure with something like:
sed -i 's|-Wl,--rpath -Wl,/usr/lib64 ||' $(find . -name 'Makefile')

Comment 1 Thorsten Leemhuis 2005-11-21 16:04:26 UTC
FYI: Filed Bug 173819 for a similar problem with neverball

Comment 2 Nils Philippsen 2006-02-15 15:39:00 UTC
I've just checked in your fix to CVS, but the buildsystem is broken ATM. Will
try later.

Comment 3 Nils Philippsen 2006-02-15 17:19:59 UTC
... building right now.

Comment 4 Nils Philippsen 2006-02-17 15:15:53 UTC
Should be fixed in ppracer-0.3.1-4.fc4.1.