Subject: Re: XFree86-4.6.0 on Solaris
To: Michael <macallan1888@gmail.com>
From: Raymond Meyer <raymond.meyer@rambler.ru>
List: port-sparc64
Date: 07/15/2006 20:42:22
On Sat, 15 Jul 2006 15:20:01 -0400
Michael <macallan1888@gmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hello,
>
> On Jul 15, 2006, at 15:05, Raymond Meyer wrote:
>
> > Hi, I did manage to build meta-pkgs/xorg on Sparc Solaris.
> > I copied sunffb directory from NetBSD's X11 tree into my local tree
> > and built the
> > driver. When I run 'X -configure' the Xserver tries to load the
> > driver, but then it
> > gives the following error message.
> >
> > Couldn't open RGB_DB '/opt/pkg/xorg/lib/X11/rgb'
> > List of video drivers:
> > sunffb
> > ld.so.1: Xorg: fatal: relocation error: file
> > /opt/pkg/xorg/lib/modules/drivers/sunffb_drv.so: symbol
> > xf86MatchSbusInstances: referenced symbol not found
>
> This function is defined in Xserver/hw/xfree86/common/xf86sbusBus.c,
> should be built into your XFree86 binary.
[root@ultra10] nm Xorg | grep xf86Match
[3726] | 402268| 492|FUNC |GLOB |0 |9 |xf86MatchDevice
[4683] | 405652| 836|FUNC |GLOB |0 |9 |xf86MatchIsaInstances
[3369] | 402760| 2892|FUNC |GLOB |0 |9 |xf86MatchPciInstances
There is no xf86MatchSbusInstances. This is really strange
bash-3.00$ pwd
/opt/sandbox/opt/pkg.obj/x11/xorg-server/work.ultra10/xc/programs/Xserver/hw/xfree86/common
bash-3.00$ ls xf86sbusBus*
xf86sbusBus.c xf86sbusBus.h xf86sbusBus.o
bash-3.00$ nm xf86sbusBus.o | grep xf86Match
[36] | 3492| 1764|FUNC |GLOB |0 |2 |xf86MatchSbusInstances
I struggle to understand how this symbol can go missing. Maybe some Makefile didn't include some object files??
bash-3.00$ pwd
/opt/sandbox/opt/pkg.obj/x11/xorg-server/work.ultra10/xc/programs/Xserver/hw/xfree86/common
bash-3.00$ nm libxf86.a | grep xf86Match
[88] | 13388| 492|FUNC |GLOB |0 |2 |xf86MatchDevice
[97] | 16772| 836|FUNC |GLOB |0 |2 |xf86MatchIsaInstances
[93] | 13880| 2892|FUNC |GLOB |0 |2 |xf86MatchPciInstances
[36] | 3492| 1764|FUNC |GLOB |0 |2 |xf86MatchSbusInstances
How do all *.o files get linked into the final Xorg binary? What is libxf86.a for, does it get linked into Xorg binary, or is it used somewhere else?