Description of problem: | $ rpmbuild --rebuild XFree86-4.3.0-22.1.src.rpm | ... | | gcc -shared .libs/libXft.la-16.o -lfontconfig /usr/lib/libfreetype.so -lz -L/usr/src/build/297254-i386/install/usr/X11R6/lib -lXrender -lX11 -march=i386 -mcpu=i686 -Wl,-soname -Wl,libXft.so.2 -o .libs/libXft.so.2.1.1 | /usr/bin/ld: cannot find -lXrender | collect2: ld returned 1 exit status | make[1]: *** [libXft.la] Error 1 | make[1]: Leaving directory `/usr/src/redhat/BUILD/XFree86-4.3.0/xft-2.1.2' | make: *** [all] Error 2 | error: Bad exit status from /var/tmp/rpm-tmp.78719 (%install) | Bad exit status from /var/tmp/rpm-tmp.78719 (%install) Two observations: * I see a lot of | ./libtool: line 4006: test: : integer expression expected messages in the build * On my system, I do not have the directory used by '-L/usr/src/build/297254-i386/install/usr/X11R6/lib'; this path was brought in by '/usr/lib/pkgconfig/xrender.pc' of the official XFree86-4.3.0-22.1 rawhide version. The '/usr/X11R6/lib/libXft.a' and '/usr/X11R6/lib/libXrender.a' files are containing this path also. /me votes for a | %check | grep -qr "${RPM_BUILD_ROOT}" ${RPM_BUILD_ROOT} && exit 1 || : statement in each spec-file Version-Release number of selected component (if applicable): XFree86-4.3.0-22.1.src.rpm
I forgot: fixing the xrender.pc paths would be probably still wrong, since libXrender.so from the current build should be used but not the library which is already installed in the system. 'BuildConflicts: XFree86-devel' would probably help, but is not very gently.
Yeah, this is the main problem I've been struggling to fix for the next build. I've tried about a zillion ways to fix it, and I'm about ready to just disable the new Xft and Xrender completely as it is wasting a whackload of my time. If anyone familiar with libtool/autotools and whatnot is interested in volunteering to help fix this problem, it'd be appreciated. Currently I'm trying to integrate it into Imake and having quite a number of problems also. If I can't get it fixed soon or have someone else give it a shot, I'm probably going to remove the new libs just so I don't waste too much time on it. Any suggestions for fixing the current build?
Just a note for anyone who tries to reproduce this problem, in order to reproduce, you must have an XFree86 installed that contains the new Xft/Xrender libraries. If you have it installed (4.3.0-22.1, or any other build with the new Xft/Xrender), and try to rebuild the RPM, the above failure will occur. Somehow if X is allready installed, the build is using the installed X bits instead of the just-built ones in the build root. I'm pretty clueless when it comes to libtool/autotools issues, since XFree86 doesn't use either, it uses Imake. Again, any help fixing this would be greatly appreciated.
Fixed for a while now internally, but no package has been updated externally yet. The first build to see this externally will likely be 4.3.0-29 which is ready now. Closing as fixed in 4.3.0-29 in rawhide.