Mail Archives: cygwin/1997/12/29/14:04:58
In a copy of your linker script,
..../H-i386-cygwin32/i386-cygwin32/lib/ldscripts/i386pe.x
replace the .idata{} section with
.idata BLOCK(__section_alignment__) :
{
/* This cannot currently be handled with grouped sections.
See pe.em:sort_sections. */
*(.idata$2)
*(.idata$3)
/* These zeroes mark the end of the import list. */
LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
*(.idata$4)
*(.idata$5)
*(.idata$6)
*(.idata$7)
}
and replace the .reloc{} section with
.reloc BLOCK(__section_alignment__) :
{
*(.reloc)
/* These zeroes mark the end of the reloc section. */
LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
}
name the copy i386pe.xfixed or something similar
and use -T i386pe.xfixed on your link line to use that linker script.
or you could download and install
B18-patched-link-compat-ld.tgz
available at ftp://ftp.deninc.com/pub/sdk
which has these and several other fixes,
(end of blatant plug ;^)
but just these 2 fixes will eliminate the need for dllfix.exe
and for fixup.o. to add an .idata$3 section to dll's. The first
change has been made to current sources, and that is why
your dll import list (.idata$2) isn't terminated properly.
and the dllfix.exe problem does exist on some versions of NT according to
comments posted to the list.
Why you are having problems with gcc <-> g++ I have no Idea,
have you make any changes to your specs file?
On Mon, 29 Dec 1997 06:14:11 PST, you wrote:
>Check out Mumit Khan's page for a newer version of dllfix. The problem
>with W95 is that the file cluster is not clean. Garbage exists beyond
>the end of file. This causes problems with binary mode opens because
>you end up with a physical end of file and not a logical end of file.
>This means that the garbage remaining in the file cluster is being read
>as part of the DLL. This problem doesn't exist on NT. Check out
>Sergey's page for more info.
>
>- \\||//
>---o0O0--Earnie--0O0o----
>-earnie_boyd AT hotmail DOT com-
>------ooo0O--O0ooo-------
>
>>Date: Mon, 29 Dec 1997 12:03:48 +0100 (MET)
>>From: boncz AT wins DOT uva DOT nl (Peter Boncz)
>>To: gnu-win32 AT cygnus DOT com
>>
>>This is a discussion between me and Bart Anderson
>(banders AT ecd DOT rockwell DOT com)
>>which I would like to bring back to the mailing list.
>>
>>The problem is compiling coolview on W95. Admittedly a crazy
>>idea, but some people (including me) really want to do it.
>>
>>Problem #1 is that if you do a ./configure the following make chokes
>>on the c++ files in the winsup/ directory. This problem I could resolve
>>with a simple hack.
>>
>>My fix in the Makefile for the .cc files is in the .cc.o line.
>>As a quick hack, I simply replaced the compiler variable by g++
>>the include variable by their actual values *minus* the -nostdinc
>>
>>Then on to Problem #2, which is more serious.
>>
>>It then compiles fine and produces a new-cygwin.dll. The trouble starts
>>when you try to actually use it. All dependent programs that try to
>start
>>fail with an error that there is no "r.dll".
>>If you put a dummy r.dll in the directory, it goes on, but
>>only to complain about a missing "|.dll".
>>
>>The most probable explanation is that the created cygwin.dll has
>>a 'dependency dll section' or something like it, which is
>>corrupted. It should be empty but it contains that characters
>>'r' and '|' (in my case, anyway).
>>
>>This may or may not have something to do with the seek trouble,
>>signalled in the [Did _you_ ever try to compile..] thread on
>>this list, also talked about earlier, in July 1997.
>>
>>In the mailing list archives I myself found a dllfix.exe program
>>providid by a guy called Greathouse (july 1997).
>>This program claims to fix the end part of my dll (it indeed says
>>that mine wrong and claims to fix it), but it doesn't resolve my
>problem.
>>
>>Moreover, I inspected the end of the dll and it seems to contain
>>routine names in the library, not a 'dependency section'.
>>I could speculate that not only in the end, but also in other
>>sections of the dll the 'garbage on seek past eof' occurs.
>>
>>If anybody knows anything, please help.
>>
>>I wish you a thread-safe 1998,
>>
>>Peter Boncz
>>-
>>For help on using this list (especially unsubscribing), send a message
>to
>>"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
>>
>
>
>
>______________________________________________________
>Get Your Private, Free Email at http://www.hotmail.com
>-
>For help on using this list (especially unsubscribing), send a message to
>"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
Linux a platform built by, and for users, standing on
the firm legs of reliability, and speed.
Microsoft Windows, a platform without a leg to stand on.
(jeffdbREMOVETHIS AT netzone DOT com)
delete REMOVETHIS from the above to reply
Mikey
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -