RH8 upgrade to XFree86-4.3.0-17.src.rpm, linker error ??

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Wondering if anybody has encounter this compile error trying
to upgrade to 4.3 from rawhide sources on RH8

/usr/bin/ld: ../../../lib/GL/glx/glapi_x86.o: TLS local exec code cannot be
linked into shared objects
../../../lib/GL/glx/glapi_x86.o: could not read symbols: File format not
recognized
collect2: ld returned 1 exit status

...complete log
[redhat GL]# make
making all in lib/GL/GL...
make[1]: Entering directory
`/usr/src/redhat/BUILD/XFree86-4.3.0/xc/lib/GL/GL'
rm -f libGL.a
ar clq libGL.a ../../../lib/GL/glx/?*.o ../../../lib/GL/dri/XF86dri.o
../../../lib/GL/dri/dri_glx.o
ranlib libGL.a
rm -f ../../../exports/lib/libGL.a
cd ../../../exports/lib && ln -s ../../lib/GL/GL/libGL.a .
rm -f libGL.so.1.2~
+ cd .
+ gcc -m32 -o ./libGL.so.1.2~ -shared -Wl,-Bsymbolic -Wl,-soname,libGL.so.1
../../../lib/GL/glx/clientattrib.o ../../../lib/GL/glx/compsize.o
../../../lib/GL/glx/dispatch.o ../../../lib/GL/glx/eval.o
../../../lib/GL/glx/glapinoop.o ../../../lib/GL/glx/glapi.o
../../../lib/GL/glx/glapits.o ../../../lib/GL/glx/glapi_x86.o
../../../lib/GL/glx/glthread.o ../../../lib/GL/glx/glxcmds.o
../../../lib/GL/glx/glxext.o ../../../lib/GL/glx/g_render.o
../../../lib/GL/glx/g_single.o ../../../lib/GL/glx/g_vendpriv.o
../../../lib/GL/glx/indirect_init.o ../../../lib/GL/glx/pixel.o
../../../lib/GL/glx/pixelstore.o ../../../lib/GL/glx/render2.o
../../../lib/GL/glx/renderpix.o ../../../lib/GL/glx/single2.o
../../../lib/GL/glx/singlepix.o ../../../lib/GL/glx/vertarr.o
../../../lib/GL/glx/xfont.o ../../../lib/GL/dri/XF86dri.o
../../../lib/GL/dri/dri_glx.o -L../../../exports/lib -lXext -lX11 -ldl -lc
/usr/bin/ld: ../../../lib/GL/glx/glapi_x86.o: TLS local exec code cannot be
linked into shared objects
../../../lib/GL/glx/glapi_x86.o: could not read symbols: File format not
recognized
collect2: ld returned 1 exit status
+ rm -f libGL.so.1
+ ln -s libGL.so.1.2 libGL.so.1
+ rm -f ../../../exports/lib/libGL.so.1
+ cd ../../../exports/lib
+ ln -s ../../lib/GL/GL/libGL.so.1 .
rm -f libGL.so.1.2
mv -f libGL.so.1.2~ libGL.so.1.2
mv: cannot stat `libGL.so.1.2~': No such file or directory
make: *** [libGL.so.1.2] Error 1
[root@xxxxxx GL]# ls ../../../lib/GL/glx/glapi_x86.o
../../../lib/GL/glx/glapi_x86.o

This is the procedure I was using to try this from sources

1/ Download freetype, fontconfig & XFree86 source RPMs:

These are the ones I used:

ftp://rpmfind.net/linux/rawhide/1.0/SRPMS/SRPMS/freetype-2.1.4-4.0.src.rpm
ftp://rpmfind.net/linux/rawhide/1.0/SRPMS/SRPMS/fontconfig-2.2.1-4.src.rpm
ftp://rpmfind.net/linux/rawhide/1.0/SRPMS/SRPMS/XFree86-4.3.0-17.src.rpm



2/ Build the freetype & fontconfig RPMs:
# rpmbuild --rebuild freetype-2.1.4-4.0.src.rpm
# rpmbuild --rebuild fontconfig-2.2.1-4.src.rpm


3/ Install the new freetype & fontconfig RPMs:

# cd /usr/src/redhat/RPMS/i386
# rpm -Uhv fontconfig-2.2.1-4.i386.rpm fontconfig-devel-2.2.1-4.i386.rpm
# rpm -Uhv freetype-2.1.4-4.0.i386.rpm freetype-devel-2.1.4-4.0.i386.rpm


4/ Install Xfree86 4.3 source RPM:

# rpm -ihv  XFree86-4.3.0-17.src.rpm

5/ Edit the XFree86.spec (see attached diff):

Apparently, Xft was merged into XFree86 and the previously separate Xft
package was made obsolete. Unfortunately, just about every GNOME & KDE
RPM is dependent on Xft. The solution I found was to include Xft and
Xft-devel in the "Provides" sections of the spec file. If you build
XFree86 without these changes & force-install the RPMs, the dependencies
on all the previously mentioned GNOME & KDE RPMs will be broken.


6/ Build XFree86-4.3 RPMS using the modified spec file:

# cd /usr/src/redhat/SPECS
# rpmbuild -bb XFree86.spec  <=============This is the setp that dies


7/ Install the new RPMs:

# cd /usr/src/redhat/RPMS
# rpm -Uhv XFree86*


8/ Update the dynamic linker cache:

This allows apps linked against Xft to find the new version in
/usr/X11R6/lib instead of /usr/lib.


# /sbin/ldconfig

9/ Restart any/all X clients/servers.


[Red Hat General]     [Red Hat Watch]     [Red Hat Development]     [Kernel Development]     [Yosemite Camping]

  Powered by Linux