On Fri, 17 Feb 2006, Dill, Jens (END-CHI) wrote:
[...]
I did try rebaseall. It told me all the Oracle DLLs were not
rebaseable. The -v output is included below.
[...]
/usr/bin/tclpip84.dll: skipped because not rebaseable
/usr/share/terminfo/a/ansi+sgrso: skipped because not rebaseable
/usr/share/terminfo/c/cons60-iso: skipped because not rebaseable
/usr/share/terminfo/x/xterm-boldso: skipped because not rebaseable
/usr/share/xemacs/xemacs-packages/etc/psgml-dtds/ISO_8879-1986/entities/ISOa
mso: skipped because not rebaseable
/cygdrive/d/oracle/app/oracle/product/9.2.0/bin/orasql9.dll: skipped because
not rebaseable
/cygdrive/d/oracle/app/oracle/product/9.2.0/bin/oracore9.dll: skipped
because not rebaseable
/cygdrive/d/oracle/app/oracle/product/9.2.0/bin/oranls9.dll: skipped because
not rebaseable
/cygdrive/d/oracle/app/oracle/product/9.2.0/bin/oraunls9.dll: skipped
because not rebaseable
/cygdrive/c/WINDOWS/system32/MSVCRT.dll: skipped because not rebaseable
[...]
Rebaseall calls rebase, and rebase may be failing on some or all of these
because it has an outdated idea of where the IMAGE_NT_SIGNATURE is in
image files.
The code at /src/rebase-2.3.1/rebase.c:255 assumes the signature is at
offset 0x80 in the image. This was true in the early Windows days but has
long since been generalized. The technique nowadays is to obtain the
short integer value e_lfanew at offset 0x3C in the image, and use that as
the offset to check for the signature.
I see that the /usr/bin/tclpip84.dll you mention has an e_lfanew value of
0x80, so rebase must have some other issue with that file. But maybe your
Oracle DLLs use the more modern image layout.
HTH,
..mark
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/