Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 24111 - avifile (avifile-0.7.32.20030219) doesn't build; reports unknown symbols in libXft
Summary: avifile (avifile-0.7.32.20030219) doesn't build; reports unknown symbols in l...
Status: VERIFIED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: foser (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-07-08 11:04 UTC by Ray Heasman
Modified: 2003-07-31 03:07 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ray Heasman 2003-07-08 11:04:42 UTC
I am upgrading my system from 1.2 to a "stable" 1.4. "avifile" does not build.
This seems to be the norm - I have never had any build involving avifile work
without hacking.

I am at a bit of a loss as to what to do this time, because I am half way
through a a 500 package recompile, and dont want to lose my emerge state
information for an "emerge --resume".

Here is the error:
/bin/sh ../../libtool --mode=link i686-pc-linux-gnu-g++  -g -O2 -mcpu=i686
-march=i686 -ffast-math -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT
-D_GNU_SOURCE -pipe   -o avicat  avicat.o ../../lib/libaviplay.la -L/usr/lib
-Wl,-rpath,/usr/lib -lSDL -lpthread -lXft -lfreetype -lz -L/usr/X11R6/lib
-lXrender -L/usr/X11R6/lib  -lSM
-lICE -lXinerama -lXv -lXxf86vm -lXxf86dga -lXi  -lXext -lX11  -lnsl -ldl
/usr/lib/libXft.so: undefined reference to `FcPatternAddInteger'
/usr/lib/libXft.so: undefined reference to `FcPatternAddBool'
/usr/lib/libXft.so: undefined reference to `FcPatternGetBool'
/usr/lib/libXft.so: undefined reference to `FcFreeTypeCharSet'
/usr/lib/libXft.so: undefined reference to `FcNameUnparse'
/usr/lib/libXft.so: undefined reference to `FcNameConstant'
/usr/lib/libXft.so: undefined reference to `FcObjectSetDestroy'
/usr/lib/libXft.so: undefined reference to `FcPatternDuplicate'
/usr/lib/libXft.so: undefined reference to `FcCharSetHasChar'
/usr/lib/libXft.so: undefined reference to `FcFontList'
/usr/lib/libXft.so: undefined reference to `FcUtf16ToUcs4'
/usr/lib/libXft.so: undefined reference to `FcUtf8ToUcs4'
/usr/lib/libXft.so: undefined reference to `FcPatternVaBuild'
/usr/lib/libXft.so: undefined reference to `FcPatternGetDouble'
/usr/lib/libXft.so: undefined reference to `FcPatternGetString'
/usr/lib/libXft.so: undefined reference to `FcInit'
/usr/lib/libXft.so: undefined reference to `FcPatternGetInteger'
/usr/lib/libXft.so: undefined reference to `FcPatternGetCharSet'
/usr/lib/libXft.so: undefined reference to `FcPatternCreate'
/usr/lib/libXft.so: undefined reference to `FcPatternAddString'
/usr/lib/libXft.so: undefined reference to `FcPatternGet'
/usr/lib/libXft.so: undefined reference to `FcPatternAddDouble'
/usr/lib/libXft.so: undefined reference to `FcConfigSubstitute'
/usr/lib/libXft.so: undefined reference to `FcObjectSetCreate'
/usr/lib/libXft.so: undefined reference to `FcPatternDestroy'
/usr/lib/libXft.so: undefined reference to `FcCharSetCount'
/usr/lib/libXft.so: undefined reference to `FcNameRegisterObjectTypes'
/usr/lib/libXft.so: undefined reference to `FcObjectSetAdd'
/usr/lib/libXft.so: undefined reference to `FcPatternAdd'
/usr/lib/libXft.so: undefined reference to `FcStrCmpIgnoreCase'
/usr/lib/libXft.so: undefined reference to `FcConfigGetBlanks'
/usr/lib/libXft.so: undefined reference to `FcFreeTypeCharIndex'
/usr/lib/libXft.so: undefined reference to `FcNameParse'
/usr/lib/libXft.so: undefined reference to `FcPatternGetFTFace'
/usr/lib/libXft.so: undefined reference to `FcPatternGetMatrix'
/usr/lib/libXft.so: undefined reference to `FcPatternPrint'
/usr/lib/libXft.so: undefined reference to `FcFontMatch'
/usr/lib/libXft.so: undefined reference to `FcDefaultSubstitute'
collect2: ld returned 1 exit status
make[2]: *** [avibench] Error 1
make[2]: *** Waiting for unfinished jobs....
i686-pc-linux-gnu-g++ -g -O2 -mcpu=i686 -march=i686 -ffast-math
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_GNU_SOURCE -pipe -o
.libs/avicat avicat.o -Wl,-rpath -Wl,/usr/lib  ../../lib/.libs/libaviplay.so
-L/usr/lib -L/usr/kde/3.1/lib -L/usr/X11R6/lib /usr/kde/3.1/lib/libartsc.so
-lslang /usr/lib/libSDL.so -lartsc /usr/lib/libesd.so /usr/lib/libaudiofile.so
-lm /usr/lib/libasound.so -laudio -lXt -lggi /usr/lib/libgii.so
/usr/lib/libgg.so -lvga /usr/lib/libaa.so -lpthread -lXft
/usr/lib/libfreetype.so -lz -lXrender -lSM -lICE -lXinerama -lXv -lXxf86vm
-lXxf86dga -lXi -lXext -lX11 -lnsl -ldl -Wl,--rpath -Wl,/usr/kde/3.1/lib
/usr/lib/libXft.so: undefined reference to `FcPatternAddInteger'
/usr/lib/libXft.so: undefined reference to `FcPatternAddBool'
/usr/lib/libXft.so: undefined reference to `FcPatternGetBool'
/usr/lib/libXft.so: undefined reference to `FcFreeTypeCharSet'
/usr/lib/libXft.so: undefined reference to `FcNameUnparse'
/usr/lib/libXft.so: undefined reference to `FcNameConstant'
/usr/lib/libXft.so: undefined reference to `FcObjectSetDestroy'
/usr/lib/libXft.so: undefined reference to `FcPatternDuplicate'
/usr/lib/libXft.so: undefined reference to `FcCharSetHasChar'
/usr/lib/libXft.so: undefined reference to `FcFontList'
/usr/lib/libXft.so: undefined reference to `FcUtf16ToUcs4'
/usr/lib/libXft.so: undefined reference to `FcUtf8ToUcs4'
/usr/lib/libXft.so: undefined reference to `FcPatternVaBuild'
/usr/lib/libXft.so: undefined reference to `FcPatternGetDouble'
/usr/lib/libXft.so: undefined reference to `FcPatternGetString'
/usr/lib/libXft.so: undefined reference to `FcInit'
/usr/lib/libXft.so: undefined reference to `FcPatternGetInteger'
/usr/lib/libXft.so: undefined reference to `FcPatternGetCharSet'
/usr/lib/libXft.so: undefined reference to `FcPatternCreate'
/usr/lib/libXft.so: undefined reference to `FcPatternAddString'
/usr/lib/libXft.so: undefined reference to `FcPatternGet'
/usr/lib/libXft.so: undefined reference to `FcPatternAddDouble'
/usr/lib/libXft.so: undefined reference to `FcConfigSubstitute'
/usr/lib/libXft.so: undefined reference to `FcObjectSetCreate'
/usr/lib/libXft.so: undefined reference to `FcPatternDestroy'
/usr/lib/libXft.so: undefined reference to `FcCharSetCount'
/usr/lib/libXft.so: undefined reference to `FcNameRegisterObjectTypes'
/usr/lib/libXft.so: undefined reference to `FcObjectSetAdd'
/usr/lib/libXft.so: undefined reference to `FcPatternAdd'
/usr/lib/libXft.so: undefined reference to `FcStrCmpIgnoreCase'
/usr/lib/libXft.so: undefined reference to `FcConfigGetBlanks'
/usr/lib/libXft.so: undefined reference to `FcFreeTypeCharIndex'
/usr/lib/libXft.so: undefined reference to `FcNameParse'
/usr/lib/libXft.so: undefined reference to `FcPatternGetFTFace'
/usr/lib/libXft.so: undefined reference to `FcPatternGetMatrix'
/usr/lib/libXft.so: undefined reference to `FcPatternPrint'
/usr/lib/libXft.so: undefined reference to `FcFontMatch'
/usr/lib/libXft.so: undefined reference to `FcDefaultSubstitute'
collect2: ld returned 1 exit status
make[2]: *** [avicat] Error 1
make[2]: Leaving directory
`/var/tmp/portage/avifile-0.7.32.20030219/work/avifile0.7-0.7.32/samples/misc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/avifile-0.7.32.20030219/work/avifile0.7-0.7.32/samples'
make: *** [all-recursive] Error 1
 
!!! ERROR: media-video/avifile-0.7.32.20030219 failed.
!!! Function src_compile, Line 138, Exitcode 2
!!! (no error message)

Here is the output of "emerge info":

Portage 2.0.48-r1 (default-x86-1.4, gcc-3.2.2, glibc-2.2.5-r4,2.3.1-r4)
=================================================================
System uname: 2.4.20-gentoo-r2 i686 AMD Athlon(tm) Processor
GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo
http://csociety-ftp.ecn.purdue.edu/pub/gentoo/
ftp://mirror.iawnet.sandia.gov/pub/gentoo/"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config
/usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 oss 3dnow apm avi crypt cups encode gif jpeg libg++ mikmod mmx mpeg
ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gtkhtml gdbm
berkdb slang readline tetex svga tcltk java guile X sdl gpm tcpd pam libwww ssl
perl python esd imlib oggvorbis gnome gtk qt kde motif opengl -arts aalib acpi
alsa bonobo canna cdr cjk dga directfb dvd fbcon freewnn ggi gphoto2 imap jack
ladcca lcms ldap maildir mozilla nas pda sasl sse usb"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-mcpu=i686 -O3 -pipe"
CXXFLAGS="-O2 -mcpu=i686 -pipe"
ACCEPT_KEYWORDS="x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"



Reproducible: Always
Steps to Reproduce:
1. emerge -e world
2.
3.

Actual Results:  
Build fails on avifile.

Expected Results:  
Worked.


I have NOT set "~x86". See above for "emerge info" info.
Comment 1 Martin Holzer (RETIRED) gentoo-dev 2003-07-08 12:28:21 UTC
reemerge x11-libs/xft
then go on
Comment 2 Ray Heasman 2003-07-08 13:15:05 UTC
Thanks for the suggestion. This is what happens.

---

maze portage # emerge xft
Calculating dependencies ...done!
 
!!! Error: the >=x11-base/xfree-4.3.0-r2 package conflicts with this package and both can't be installed on the same system together.

---

Huh? I can't have XFT installed when I use X?

Will I be able to "emerge --resume" my rebuild after emerging stuff manually?
Comment 3 Luca Barbato gentoo-dev 2003-07-10 12:48:18 UTC
please check your xfree version

later xfree provides xft since it got incorporated in the xfree tree and developed/improved there

please emerge fontconfig too.
Comment 4 Ray Heasman 2003-07-10 13:30:23 UTC
Thanks for the suggestion. Re-emerging fontconfig made the difference.

I had xfree 4.3.0-r2, and fontconfig 2.2.0-r2 installed.

Re-emerging fontconfig 2.2.0-r2 made avifile build successfully. I didnt touch xfree.

I really have no idea why. Perhaps fontconfig was still GCC2-compiled code?

Perhaps portage tried to compile avifile before it got around to compiling fontconfig.
Comment 5 Luca Barbato gentoo-dev 2003-07-10 13:45:52 UTC
I think that fontconfig got pruned during the xft changes.

closing the bug.
Comment 6 Ray Heasman 2003-07-10 15:57:59 UTC
I emerged the SAME version of fontconfig. No emerge sync, no update. The only thing changed was that it MIGHT have been previously compiled with GCC2 rather than GCC3.

I don't know how the portage stuff works, so I'll leave the conclusions up to you. :-)

Thanks for the help.
Comment 7 Dave Smith (lanalyst) 2003-07-31 01:28:02 UTC
Just an additional note about this.. I ran across this same issue and tried re-emerging fontconfig without any luck. As it turns out, I had xft-2.0.1-r2 emerged with xfree-4.3.0-r2 (xft showed a block but xfree didnt).  Probably a leftover from running xfree-4.2.99.

Solution was to `emerge unmerge xft` then `emerge xfree fontconfig avifile`.

Perhaps xft should be masked now that the stable xfree installs it?  The block was obvious when trying to `emerge xft` but xfree would emerge with xft without a complaint.
Comment 8 foser (RETIRED) gentoo-dev 2003-07-31 02:30:52 UTC
you are on to something here. The xfree ebuild mistakenly blocks virtual/xft, while this doesn't work at this time (should it ever?). I've changed the block to x11-libs/xft now, which should properly block out the xft ebuild.

xfree team members please take a mental note of this.

thanks for your comment on this lanalyst.
Comment 9 Seemant Kulleen (RETIRED) gentoo-dev 2003-07-31 02:43:18 UTC
it works with the virtual/mta ebuilds

it was a portage issue -- the new -r7 release of portage should recognise blocks again.
Comment 10 foser (RETIRED) gentoo-dev 2003-07-31 03:07:09 UTC
Well, -r5 and -r6 don't and i think most people are running that. Did it work before those versions ? Cause it had been virtual/xft for quite some time.

Anyway, if the current setup works with all portage versions i think its better this way for now (practical, not esthetical), since there are only 2 xft providers.