Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Jun 2002 22:27:19 +0200
From:      Szilveszter Adam <sziszi@bsd.hu>
To:        freebsd-current@FreeBSD.ORG
Subject:   Re: GCC3.1 internal compiler error when compiling XFree86-4-libraries
Message-ID:  <20020604202719.GA775@fonix.adamsfamily.xx>
In-Reply-To: <20020603211621.V2522-100000@mail1.hub.org>
References:  <20020603150623.GA6796@meerkat.dungeon> <20020603211621.V2522-100000@mail1.hub.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello,

For what it's worth, I set out and successfully compiled the latest from
the XFree86 CVS with the latest gcc31 snapshot (May 27th). I needed to do the
following:

- I had to apply the fix that has been mentioned several times on this
  list to libXThrStub.
- I had to fix a typo in one header file under
  xc/programs/Xserver/PEX5/ddpex/mi/include/miStruct.h in a prperocessor
  statement
- I applied the patch-ioctl from ports/x11/XFree86-4-libraries
  (alternatively, you could disable the drm part), also I applied the
  patch-startx from the same place because I wanted consistent behaviour
  of startx from what I was used to.

There was (after these) a bunch of problems that I worked around with
hacks:

- There was one file, xc/lib/X11/lcUTF8.c which the gcc from ports did
  not like. It produced an internal compiler error like this:

LD_LIBRARY_PATH=../../exports/lib /usr/local/bin/gcc31 -c -ansi
-pedantic -Dasm=
__asm -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-d
eclarations -Wredundant-decls -Wnested-externs -Wundef -pthread
-I../.. -I../.
./exports/include   -DCSRG_BASED  -DFUNCPROTO=15 -DNARROWPROTO
-DXTHREADS  -D_RE
ENTRANT -D_THREAD_SAFE -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
-DMALLOC_0_RETUR
NS_NULL  -DHAS_SNPRINTF -DLIBX11  -O -pipe -march=pentiumpro   lcUTF8.c
-o unshared/lcUTF8.o
lcUTF8.c: In function `charset_wctocs':
lcUTF8.c:582: unrecognizable insn:
(insn 251 70 252 (set (reg:CC 17 flags)
        (compare:CC (mem:QI (reg/v/f:SI 63) [0 S1 A8])
	            (const_int 128 [0x80]))) -1 (nil)
		        (expr_list:REG_DEAD (reg/v/f:SI 63)
			        (nil)))
	lcUTF8.c:582: Internal compiler error in
	extract_insn, at recog.c:2132
	Please submit a full bug report,
	with preprocessed source if appropriate.
	See
	<URL:http://www.gnu.org/software/gcc/bugs.html>;
	for instructions.
	*** Error code 1 (continuing)

(Sorry for cut&paste)

However, when I compiled this only one file with the base system gcc, it
worked and linked.

- In xc/programs/glxinfo/Makefile, I had to manually define the path to
  the libstdc++.a in
  /usr/local/lib/gcc-lib/i386-portbld-freebsd5.0/3.1.1/ because
  otherwise it was not found. (I suspect this is because it uses the
  gcc31 frontend, not g++31.)

After this, I now have a new X that appears to work at first sight. I
somehow managed to mess it up though because now it seems to ignore the
Xwrapper port although I have it installed and so only works if I make
the X server suid root. But it is probably me... Also, stability remains
to be seen, since the original reason for upgrading was that 4.2.0 was
regularly freezing with my Virge GX2 card, and supposedly some fixes
were prepared for this problem... we'll see.

This is just an FYI for all having problems with X building now. 

Note: I did not try the base system compiler for building yet, apart
from that quick hack indicated above.

-- 
Regards:

Szilveszter ADAM
Szombathely Hungary

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020604202719.GA775>