Mail Archives: cygwin/2004/07/26/12:55:18
On Mon, 26 Jul 2004, Alexander Gottwald wrote:
> Christopher Faylor wrote:
> > I've made a new version of binutils available for installation.
> > This version is a refresh from CVS on sources.redhat.com.
>
> With the new binutils I get these errors when compiling xorg-x11
>
> Bitmap.o(.data+0x298):Bitmap.c: variable '_XtStrings' can't be
> auto-imported. Please read the documentation for ld's
> --enable-auto-import for details.
>
> DLL build commandline:
> gcc -shared -Wl,--out-implib=libXt-6.dll.a -Wl,--enable-auto-import,
> --enable-runtime-pseudo-reloc --def Xt.def -Wl,--exclude-libs,ALL
> -o cygXt-6.dll ActionHook.o Alloc.o ArgList.o [...]
> ResConfig.o -L../../exports/lib -lSM -lICE -lX11
>
> Exe build commandline:
> gcc -o bitmap.exe -O2 -fno-strength-reduce -Wall -Wpointer-arith
> -L../../exports/lib BitEdit.o CutPaste.o Graphics.o ReqMach.o Bitmap.o
> Dialog.o Handlers.o -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11
> -L/usr/X11R6/lib -Wl,--enable-auto-import
Work around: Use --enable-runtime-pseudo-reloc here as well.
It appears that this binutils release has left out the
following Cygwin local patch which was present in past releases:
diff -ruwp ./emultempl/pe.em ../../binutils-20040312-1/ld/emultempl/pe.em
--- ./emultempl/pe.em 2004-07-15 08:05:12.001000000 -0500
+++ ../../binutils-20040312-1/ld/emultempl/pe.em 2004-02-13 14:31:29.001000000 -0600
@@ -135,7 +129,7 @@ gld_${EMULATION_NAME}_before_parse (void
config.dynamic_link = TRUE;
config.has_shared = 1;
link_info.pei386_auto_import = -1;
- link_info.pei386_runtime_pseudo_reloc = FALSE;
+ link_info.pei386_runtime_pseudo_reloc = -1;
#if (PE_DEF_SUBSYSTEM == 9) || (PE_DEF_SUBSYSTEM == 2)
#if defined TARGET_IS_mipspe || defined TARGET_IS_armpe
@@ -338,14 +329,12 @@ gld_${EMULATION_NAME}_list_options (FILE
fprintf (file, _(" --disable-auto-import Do not auto-import DATA items from DLLs\n"));
fprintf (file, _(" --enable-runtime-pseudo-reloc Work around auto-import limitations by\n\
adding pseudo-relocations resolved at\n\
- runtime.\n"));
+ runtime. (default)\n"));
diff -ruwp ./ldmain.c ../../binutils-20040312-1/ld/ldmain.c
--- ./ldmain.c 2004-07-24 23:28:21.001000000 -0500
+++ ../../binutils-20040312-1/ld/ldmain.c 2004-02-14 20:25:17.001000000 -0600
@@ -328,7 +317,7 @@ main (int argc, char **argv)
link_info.init_function = "_init";
link_info.fini_function = "_fini";
link_info.pei386_auto_import = -1;
- link_info.pei386_runtime_pseudo_reloc = FALSE;
+ link_info.pei386_runtime_pseudo_reloc = -1;
link_info.spare_dynamic_tags = 5;
link_info.flags = 0;
link_info.flags_1 = 0;
Note that oddly enough, the usage change says the default is the opposite
of reality.
> switching back to binutils-20040312-1 solved this.
>
> I'm using a crosscompiled version of binutils-20040725-1 on linux
> at home where I did not notice these symptoms.
--
Brian Ford
Senior Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
the best safety device in any aircraft is a well-trained pilot...
--
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/
- Raw text -