Bug 18489 - print/acroread4 doesn't properly branded to Linux
Summary: print/acroread4 doesn't properly branded to Linux
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: David E. O'Brien
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2000-05-10 17:30 UTC by FUJISHIMA Satsuki
Modified: 2003-07-08 02:29 UTC (History)
0 users

See Also:


Attachments
file.diff (706 bytes, patch)
2000-05-10 17:30 UTC, FUJISHIMA Satsuki
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description FUJISHIMA Satsuki 2000-05-10 17:30:01 UTC
	brandelf brands binary with EI_OSABI but ld doesn't see it if
	old brand exists on it. This is the case of current acroread4
	port.

	First, untouched binary in tarball is:

$ ls -l acroread
-rwxr-xr-x  1 k5  wheel  3379910 Jan 27 09:30 acroread*
$ hd acroread|head -1
00000000  7f 45 4c 46 01 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|

	This hasn't been branded but works on FreeBSD.

	Next, the binary was stripped during make install:

$ ls -l acroread
-rwxr-xr-x  1 k5  wheel  2549840 May 11 00:47 acroread*
$ hd acroread|head -1
00000000  7f 45 4c 46 01 01 01 09  46 72 65 65 42 53 44 00  |.ELF....FreeBSD.|

	strip(1) brands it to FreeBSD with both new and old method.
	This is not so good.

	Then, brandelf it to Linux at post-install target:

$ hd acroread|head -1
00000000  7f 45 4c 46 01 01 01 03  46 72 65 65 42 53 44 00  |.ELF....FreeBSD.|

	Properly branded to Linux with new method but old brand string
	is still there. The problem occurrs here; ld looks old method
	prior to new one for compatibility reason. So this acroread
	binary would be treated as FreeBSD native and then bombed.

	To avoid this confusion: use linux strip instead.
	Or wait for October when old brand method support would be
	removed. :)

	Also strip(1) should not use old method to brand binary I think.

	I don't know about Alpha.

How-To-Repeat: 
/usr/ports/print/acroread4# make install
/usr/ports/print/acroread4# exit
$ acroread4
ELF interpreter /lib/ld-linux.so.2 not found
Abort trap
Comment 1 jseger freebsd_committer freebsd_triage 2000-05-13 16:33:43 UTC
Responsible Changed
From-To: freebsd-ports->dima

Over to MAINTAINER 
Comment 2 David E. O'Brien freebsd_committer freebsd_triage 2000-05-14 22:32:10 UTC
State Changed
From-To: open->closed

Fix submitted to current mailing list applied which fixes this PR> 
Comment 3 David E. O'Brien freebsd_committer freebsd_triage 2000-05-14 23:08:07 UTC
State Changed
From-To: closed->suspended

The issue is a larger one that I need to revisit. 


Comment 4 David E. O'Brien freebsd_committer freebsd_triage 2000-05-14 23:08:07 UTC
Responsible Changed
From-To: dima->obrien

I'm the base reason for the problem. 
Comment 5 dwcjr freebsd_committer freebsd_triage 2001-06-14 05:20:53 UTC
Responsible Changed
From-To: obrien->dima

New maintainer
Comment 6 dwcjr freebsd_committer freebsd_triage 2001-06-14 18:26:12 UTC
Responsible Changed
From-To: dima->obrien

That's what I get for not reading the entire audit trail, thanks for pointing that out David Obrien.
Comment 7 Jun Kuriyama freebsd_committer freebsd_triage 2003-07-08 00:02:26 UTC
Is it ok to close this PR?

print/acroread4 is removed.  I don't know this is related to print/acroread5 too.
Comment 8 David E. O'Brien freebsd_committer freebsd_triage 2003-07-08 02:28:57 UTC
State Changed
From-To: suspended->closed

OBE.