This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
Re: rebase for setup.
- From: Jason Tishler <jason at tishler dot net>
- To: Robert Collins <robert dot collins at itdomain dot com dot au>
- Cc: "Roth, Kevin P." <KPRoth at MarathonOil dot com>,cygwin-apps at sources dot redhat dot com
- Date: Wed, 16 Jan 2002 16:20:54 -0500
- Subject: Re: rebase for setup.
- References: <20011212085744.A2400@dothill.com> <20011218211235.GA2476@dothill.com> <018101c1880b$affd10a0$0200a8c0@lifelesswks> <20011219032813.GG10253@redhat.com> <20011221125117.GC1792@dothill.com> <027401c18bae$25318fe0$0200a8c0@lifelesswks> <20011227174434.GC2204@dothill.com> <045a01c18f34$10a73730$0200a8c0@lifelesswks> <20020103131837.GA1940@dothill.com> <09df01c19459$8414f250$0200a8c0@lifelesswks>
Rob,
On Fri, Jan 04, 2002 at 12:21:11AM +1100, Robert Collins wrote:
> From: "Jason Tishler" <jason@tishler.net>
> > 1. Determine why cygcurl-2.dll and possibly other DLLs do not tolerate
> > rebasing.
>
> Hmm. Yes. Did you rebase .dll's after stripping them? And what strip
> options where used?
After some more rebase runs, I believe that I have determined that
stripping is the problem:
$ strip -o pq-all.dll pq.dll
$ strip -g -o pq-debug.dll pq.dll
$ strip --strip-unneeded -o pq-unneeded.dll pq.dll
$ file pq*dll
pq-all.dll: MS Windows PE Intel 80386 console DLL
pq-debug.dll: MS Windows PE Intel 80386 console DLL
pq-unneeded.dll: MS Windows PE Intel 80386 console DLL
pq.dll: MS Windows PE Intel 80386 console DLL
$ rebase -b 0x68000000 pq*dll
pq-all.dll: new base = 68000000, new size = 20000
pq-debug.dll: new base = 68000000, new size = 20000
pq-unneeded.dll: new base = 68000000, new size = 20000
pq.dll: new base = 68000000, new size = 20000
$ file pq*dll
pq-all.dll: MS-DOS executable (EXE), OS/2 or MS Windows
pq-debug.dll: MS-DOS executable (EXE), OS/2 or MS Windows
pq-unneeded.dll: MS-DOS executable (EXE), OS/2 or MS Windows
pq.dll: MS Windows PE Intel 80386 console DLL
$ objdump -p pq*dll | fgrep ImageBase
objdump: pq-all.dll: File format not recognized
objdump: pq-debug.dll: File format not recognized
objdump: pq-unneeded.dll: File format not recognized
ImageBase 68000000
I got the same results for curl too.
Any ideas why stripping prevents some DLLs from being rebased and
not others? Any solutions besides not stripping?
Thanks,
Jason