Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 135443 - x11-libs/cairo-1.1.6-r1 build fails with nvidia opengl selected
Summary: x11-libs/cairo-1.1.6-r1 build fails with nvidia opengl selected
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal
Assignee: Doug Goldstein (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-03 15:04 UTC by Jose daLuz
Modified: 2006-06-16 12:45 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 Jose daLuz 2006-06-03 15:04:42 UTC
Updating cairo from 1.1.6 to 1.1.6-r1, I ran into the following error:

x86_64-pc-linux-gnu-gcc -march=k8 -O2 -pipe -ggdb -o .libs/imagediff imagediff.o  ./.libs/libcairotest.a ../src/.libs/
libcairo.so /usr/lib64/libfreetype.so /usr/lib64/libxml2.so -lz /usr/lib64/libglitz-glx.so -L/usr/lib64 /usr/lib64/lib
Xau.so /usr/lib64/libXdmcp.so /usr/lib64/libGL.so /usr/lib64/libX11.so /usr/lib64/libXext.so -ldl /usr/lib64/libglitz.
so -lpthread -lm
./.libs/libcairotest.a(cairo-test.o): In function `create_xlib_surface':
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/cairo-test.c:1077: undefined reference to `XRenderFindStandardFo
rmat'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/cairo-test.c:1080: undefined reference to `XRenderFindStandardFormat'
./.libs/libcairotest.a(read-png.o): In function `read_png_argb32':
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:111: undefined reference to `png_check_sig'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:118: undefined reference to `png_create_read_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:128: undefined reference to `png_create_info_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:131: undefined reference to `png_destroy_read_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:136: undefined reference to `png_init_io'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:137: undefined reference to `png_set_sig_bytes'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:139: undefined reference to `png_read_info'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:141: undefined reference to `png_get_IHDR'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:157: undefined reference to `png_get_valid'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:174: undefined reference to `png_set_bgr'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:175: undefined reference to `png_set_filler'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:177: undefined reference to `png_set_read_user_transform_fn'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:179: undefined reference to `png_read_update_info'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:188: undefined reference to `png_read_image'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:189: undefined reference to `png_read_end'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:194: undefined reference to `png_destroy_read_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:172: undefined reference to `png_set_interlace_handling'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:169: undefined reference to `png_set_gray_to_rgb'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:164: undefined reference to `png_set_packing'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:158: undefined reference to `png_set_tRNS_to_alpha'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:161: undefined reference to `png_set_strip_16'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:151: undefined reference to `png_set_palette_to_rgb'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/read-png.c:155: undefined reference to `png_set_gray_1_2_4_to_8'
./.libs/libcairotest.a(write-png.o): In function `write_png_argb32':
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:73: undefined reference to `png_create_write_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:74: undefined reference to `png_create_info_struct'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:76: undefined reference to `png_init_io'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:77: undefined reference to `png_set_IHDR'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:87: undefined reference to `png_set_bKGD'
/var/tmp/portage/cairo-1.1.6-r1/work/cairo-1.1.6/test/write-png.c:89: undefined reference to `png_set_write_user_transform_fn'

This happened with nvidia (1.0.8762) as the active opengl. I eselected mesa instead and tried again, and this time the build succeeded.

Portage 2.1_rc4 (default-linux/amd64/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.16-ck11 x86_64)
=================================================================
System uname: 2.6.16-ck11 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.0
ccache version 2.4 [enabled]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r1
dev-util/confcache:  0.4.2-r1
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r1, 2.16.93
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.16
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib64/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe -ggdb -ffriend-injection"
DISTDIR="/var/portage/distfiles"
EMERGE_DEFAULT_OPTS=""
FEATURES="autoconfig ccache confcache distlocks parallel-fetch sandbox sfperms splitdebug strict"
GENTOO_MIRRORS="http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.osuosl.org/ "
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LINGUAS="en"
PKGDIR="/var/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=120"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/gentopia /usr/local/bmg-main /usr/local/xgl-coffee /usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="amd64 X aac alsa avi bash-completion berkdb bitmap-fonts bzip2 cairo cdr cli crypt cups dbus debug dri dvd dvdr eds emboss encode esd firefox flac foomaticdb fortran gdbm gif glitz gnome gpm gstreamer gtk gtk2 hal imlib ipv6 isdnlog java jpeg kde kdehiddenvisibility ldap lzw lzw-tiff mad mono mp3 mpeg ncurses nls nptl nptlonly ogg opengl pam pcre pdflib perl pic png pppd python qt quicktime readline reflection ruby samba sdl session spell spl sqlite ssl tcpd theora tiff truetype truetype-fonts type1-fonts unicode usb userlocales vorbis xml xml2 xorg xpm xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux linguas_en userland_GNU video_cards_vesa video_cards_nvidia"
Unset:  CTARGET, INSTALL_MASK, LDFLAGS, MAKEOPTS
Comment 1 Doug Goldstein (RETIRED) gentoo-dev 2006-06-04 23:33:53 UTC
Makes almost no sense to me that nvidia & mesa would matter. The undefined references are defined in "png.h" which is libpng. The issue there though is linking. Something's missing png support somewhere... but then you also have the Xrender issue...

Did you just upgrade to the new Xorg server (7.1 from 7.0 release)? Maybe everything didn't finish rebuilding properly.

try revdep-rebuild and emerge -auDv --newuse world
Comment 2 Jose daLuz 2006-06-05 05:15:09 UTC
I've had the new xorg-server masked since the first release candidate with the ABI change as it crashes on my system with nvidia. I posted the sticky on that subject (as sternklang).

A week or so ago I rebuilt my system with gcc 4.1.1+linux-headers 2.16.6. Then I unmasked expat-2.0.0 and ran revdep-rebuild to take care of that breakage, then ran revdep-rebuild one more time to ensure link consistancy. So this was a clean system when I tried the cairo update.

So I just now tried to reproduce this with nvidia-glx and this time it succeeded. 8-p 
Comment 3 Steev Klimaszewski (RETIRED) gentoo-dev 2006-06-16 12:45:58 UTC
Reporter says that it emerged fine (I don't have this issue on my machine with an NVidia card)