$ sudo cave resolve world -cx Done: 7782 steps These are the actions I will take, in order: u net-libs/gtk-vnc:0::gentoo 0.5.0 to ::installed replacing 0.4.4 -examples gtk3 introspection -python -sasl -vala build_options: symbols=split -optional_tests -trace -preserve_work Reasons: net-misc/vinagre ... make[1]: Leaving directory `/var/tmp/paludis/net-libs-gtk-vnc-0.5.0/work/gtk-vnc-0.5.0_gtk2/src' .libs/libgvncpulse_1_0_la-vncaudiopulse.o: In function `vnc_audio_pulse_get_type': vncaudiopulse.c:(.text+0x88): undefined reference to `vnc_base_audio_get_type' collect2: ld returned 1 exit status libtool: install: error: relink `libgvncpulse-1.0.la' with the above command before installing it make[3]: *** [install-libLTLIBRARIES] Error 1 make[2]: *** [install-am] Error 2 make[1]: *** [install] Error 2 Reproducible: Always I am attaching to build log for reference
Created attachment 299113 [details] build log
Can't reproduce here :/ Please attach whatever equivalent paludis has for "emerge --info" (cave --info maybe?) Another thing to check for is .la files. Paludis is known for its pedantic behavior which results in stray .la files being left in the filesystem after package updates if a user had used a tool like dev-util/lafilefixer. To verify, please give the output of ls -l /usr/lib*/libg*vnc*.la
Fails with same error with emerge. Also have same error on another machine. There are no files on the system that match /usr/lib*/libg*vnc*.la sudo cave info =net-libs/gtk-vnc-0.5.0 Package Manager Information: Package Name paludis Package Version 0.70.1 Build Date 2012-01-07T20:08:54-0500 Built with CXX x86_64-pc-linux-gnu-g++ 4.5.3 Built with CXXFLAGS -march=native -O2 -pipe -pedantic Built with LDFLAGS -Wl,-O1 -Wl,--as-needed Environment Information: Format paludis Config dir /etc/paludis Root / System Root / World file /var/db/pkg/world Repository layman: format unavailable location /var/db/paludis/repositories/layman sync tar+http://git.exherbo.org/layman_repositories.tar.bz2 sync_options Repository gentoo: format e location /usr/portage builddir /var/tmp/paludis cache /usr/portage/metadata/cache distdir /usr/portage/distfiles eapi_when_unknown 0 eapi_when_unspecified 0 eclassdirs /usr/portage/eclass layout traditional manifest_hashes RMD160 SHA1 SHA256 names_cache /usr/portage/.cache/names newsdir /usr/portage/metadata/news profile_eapi_when_unspecified 0 profile_layout traditional profiles /usr/portage/profiles/default/linux/amd64/10.0/desktop/gnome securitydir /usr/portage/metadata/glsa setsdir /usr/portage/sets sync rsync://rsync.gentoo.org/gentoo-portage sync_options use_manifest use write_cache /var/cache/paludis/metadata Package information app-shells/bash 4.2_p20 dev-java/java-config 2.1.11-r3 dev-lang/python 2.5.4-r4 2.6.7-r2 2.7.2-r3 3.1.4-r3 3.2.2 dev-util/ccache (none) dev-util/cmake 2.8.6-r4 dev-util/pkgconfig 0.26 sys-apps/baselayout 2.1 sys-apps/openrc 0.9.8.1 sys-apps/sandbox 2.5 sys-devel/autoconf 2.13 2.68 sys-devel/automake 1.10.3 1.11.2 1.7.9-r2 1.9.6-r3 sys-devel/binutils 2.22-r1 sys-devel/gcc 4.4.6-r1 4.5.3-r2 sys-devel/gcc-config 1.5-r2 sys-devel/libtool 2.4.2 sys-devel/make 3.82-r3 sys-freebsd/freebsd-lib (none) sys-kernel/linux-headers 3.2 sys-libs/glibc 2.14.1-r2 sys-libs/uclibc (none) Repository sunrise: format e location /var/paludis/repositories/sunrise builddir /var/tmp/paludis cache /var/empty distdir /usr/portage/distfiles eapi_when_unknown 0 eapi_when_unspecified 0 eclassdirs /usr/portage/eclass /var/paludis/repositories/sunrise/eclass layout traditional manifest_hashes RMD160 SHA1 SHA256 master_repository gentoo names_cache /var/paludis/repositories/sunrise/.cache/names newsdir /var/paludis/repositories/sunrise/metadata/news profile_eapi_when_unspecified 0 profile_layout traditional profiles /usr/portage/profiles/default/linux/amd64/10.0/desktop/gnome securitydir /var/paludis/repositories/sunrise/metadata/glsa setsdir /var/paludis/repositories/sunrise/sets sync svn://overlays.gentoo.org/proj/sunrise/reviewed/ sync_options use_manifest use write_cache /var/cache/paludis/metadata Repository installed: format vdb location /var/db/pkg builddir /var/tmp/paludis eapi_when_unknown 0 names_cache /var/db/pkg/.cache/names root / Repository installed-unpackaged: format installed_unpackaged location /var/paludis/installed-unpackaged root / Repository local_overlay: format e location /usr/local/portage builddir /var/tmp/paludis cache /var/empty distdir /usr/portage/distfiles eapi_when_unknown 0 eapi_when_unspecified 0 eclassdirs /usr/portage/eclass /usr/local/portage/eclass layout traditional manifest_hashes RMD160 SHA1 SHA256 master_repository gentoo names_cache /usr/local/portage/.cache/names newsdir /usr/local/portage/metadata/news profile_eapi_when_unspecified 0 profile_layout traditional profiles /usr/portage/profiles/default/linux/amd64/10.0/desktop/gnome securitydir /usr/local/portage/metadata/glsa setsdir /usr/local/portage/sets sync sync_options use_manifest use write_cache /var/cache/paludis/metadata Repository vmware: format e location /var/paludis/repositories/vmware builddir /var/tmp/paludis cache /var/empty distdir /usr/portage/distfiles eapi_when_unknown 0 eapi_when_unspecified 0 eclassdirs /usr/portage/eclass /var/paludis/repositories/vmware/eclass layout traditional manifest_hashes RMD160 SHA1 SHA256 master_repository gentoo names_cache /var/paludis/repositories/vmware/.cache/names newsdir /var/paludis/repositories/vmware/metadata/news profile_eapi_when_unspecified 0 profile_layout traditional profiles /usr/portage/profiles/default/linux/amd64/10.0/desktop/gnome securitydir /var/paludis/repositories/vmware/metadata/glsa setsdir /var/paludis/repositories/vmware/sets sync svn://overlays.gentoo.org/proj/vmware/trunk sync_options use_manifest use write_cache /var/cache/paludis/metadata Extra Information for net-libs/gtk-vnc-0.5.0:0::gentoo: >>> Running ebuild phase killold as paludisbuild:paludisbuild... >>> Starting builtin_killold >>> Done builtin_killold >>> Completed ebuild phase killold >>> Running ebuild phases initmisc infovars info as paludisbuild:paludisbuild... >>> Starting builtin_initmisc >>> Done builtin_initmisc >>> Starting builtin_infovars ACCEPT_KEYWORDS=amd64 CBUILD=x86_64-pc-linux-gnu CFLAGS=-march=native -O2 -pipe CHOST=x86_64-pc-linux-gnu CONFIG_PROTECT= CONFIG_PROTECT_MASK= CPPFLAGS= CTARGET= CXXFLAGS=-march=native -O2 -pipe DISTDIR=/usr/portage/distfiles FEATURES= FFLAGS= GENTOO_MIRRORS= INSTALL_MASK= LANG= LC_ALL=C LDFLAGS=-Wl,-O1 -Wl,--as-needed LINGUAS=en MAKEOPTS=-j13 PORTAGE_COMPRESS= PORTAGE_COMPRESS_FLAGS= PORTAGE_CONFIGROOT= PORTAGE_RSYNC_EXTRA_OPTS= PORTAGE_RSYNC_OPTS= PORTAGE_TMPDIR=/var/tmp/paludis PORTDIR=/usr/portage PORTDIR_OVERLAY= SYNC= USE=gtk3 introspection amd64 alsa_cards_ali5451 alsa_cards_als4000 alsa_cards_atiixp alsa_cards_atiixp-modem alsa_cards_bt87x alsa_cards_ca0106 alsa_cards_cmipci alsa_cards_emu10k1x alsa_cards_ens1370 alsa_cards_ens1371 alsa_cards_es1938 alsa_cards_es1968 alsa_cards_fm801 alsa_cards_hda-intel alsa_cards_intel8x0 alsa_cards_intel8x0m alsa_cards_maestro3 alsa_cards_trident alsa_cards_usb-audio alsa_cards_via82xx alsa_cards_via82xx-modem alsa_cards_ymfpci alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mmap_emul alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol apache2_modules_actions apache2_modules_alias apache2_modules_auth_basic apache2_modules_authn_alias apache2_modules_authn_anon apache2_modules_authn_dbm apache2_modules_authn_default apache2_modules_authn_file apache2_modules_authz_dbm apache2_modules_authz_default apache2_modules_authz_groupfile apache2_modules_authz_host apache2_modules_authz_owner apache2_modules_authz_user apache2_modules_autoindex apache2_modules_cache apache2_modules_cgi apache2_modules_cgid apache2_modules_dav apache2_modules_dav_fs apache2_modules_dav_lock apache2_modules_deflate apache2_modules_dir apache2_modules_disk_cache apache2_modules_env apache2_modules_expires apache2_modules_ext_filter apache2_modules_file_cache apache2_modules_filter apache2_modules_headers apache2_modules_include apache2_modules_info apache2_modules_log_config apache2_modules_logio apache2_modules_mem_cache apache2_modules_mime apache2_modules_mime_magic apache2_modules_negotiation apache2_modules_rewrite apache2_modules_setenvif apache2_modules_speling apache2_modules_status apache2_modules_unique_id apache2_modules_userdir apache2_modules_usertrack apache2_modules_vhost_alias calligra_features_braindump calligra_features_flow calligra_features_karbon calligra_features_kexi calligra_features_krita calligra_features_plan calligra_features_stage calligra_features_tables calligra_features_words cameras_ptp2 collectd_plugins_df collectd_plugins_interface collectd_plugins_irq collectd_plugins_load collectd_plugins_memory collectd_plugins_rrdtool collectd_plugins_swap collectd_plugins_syslog elibc_glibc gpsd_protocols_aivdm gpsd_protocols_ashtech gpsd_protocols_earthmate gpsd_protocols_evermore gpsd_protocols_fv18 gpsd_protocols_garmin gpsd_protocols_garmintxt gpsd_protocols_gpsclock gpsd_protocols_itrax gpsd_protocols_mtk3301 gpsd_protocols_navcom gpsd_protocols_nmea gpsd_protocols_ntrip gpsd_protocols_oceanserver gpsd_protocols_oldstyle gpsd_protocols_oncore gpsd_protocols_rtcm104v2 gpsd_protocols_rtcm104v3 gpsd_protocols_sirf gpsd_protocols_superstar2 gpsd_protocols_timing gpsd_protocols_tnt gpsd_protocols_tripmate gpsd_protocols_tsip gpsd_protocols_ubx input_devices_evdev input_devices_wacom kernel_linux lcd_devices_bayrad lcd_devices_cfontz lcd_devices_cfontz633 lcd_devices_glk lcd_devices_hd44780 lcd_devices_lb216 lcd_devices_lcdm001 lcd_devices_mtxorb lcd_devices_ncurses lcd_devices_text linguas_en php_targets_php5-3 ruby_targets_ruby18 ruby_targets_ruby19 userland_GNU video_cards_fbdev video_cards_nv video_cards_nvidia video_cards_vesa xtables_addons_account xtables_addons_chaos xtables_addons_condition xtables_addons_delude xtables_addons_dhcpmac xtables_addons_fuzzy xtables_addons_geoip xtables_addons_iface xtables_addons_ipmark xtables_addons_ipp2p xtables_addons_ipset xtables_addons_ipv4options xtables_addons_length2 xtables_addons_logmark xtables_addons_lscan xtables_addons_pknock xtables_addons_psd xtables_addons_quota2 xtables_addons_rawnat xtables_addons_steal xtables_addons_sysrq xtables_addons_tarpit xtables_addons_tee amd64 >>> Done builtin_infovars >>> Starting pkg_info >>> Done pkg_info >>> Completed ebuild phases initmisc infovars info >>> Running ebuild phase tidyup as paludisbuild:paludisbuild... >>> Starting builtin_tidyup rm -fr /var/tmp/paludis/net-libs-gtk-vnc-0.5.0-info >>> Done builtin_tidyup >>> Completed ebuild phase tidyup
(In reply to comment #3) OK. Next guess, maybe something is wrong with the libtool files (*.la and *.lai) that are being generated during the build process. Please attach the gtk-vnc-0.5.0-libtool-files.tar.bz2 file resulting from # find /var/tmp/paludis/net-libs-gtk-vnc-0.5.0 -name '*.la*' | \ xargs tar -chf - | bzip2 > gtk-vnc-0.5.0-libtool-files.tar.bz2
Created attachment 299297 [details] gtk-vnc-0.5.0-libtool-files.tar.bz2 Attached libtool files as requested
(In reply to comment #5) > Created attachment 299297 [details] > gtk-vnc-0.5.0-libtool-files.tar.bz2 > > Attached libtool files as requested Thanks, I think I now see what happened. Libtool finds /usr/lib64/libgio-2.0.la, /usr/lib64/libgmodule-2.0.la, /usr/lib64/libgobject-2.0.la, and /usr/lib64/libgthread-2.0.la files in your filesystem, and tries to use them for linking. The presence of these files changes the order of arguments in the linking command in such a way that the libgvncpulse-1.0 library ends up getting linked to /usr/lib64/libgvnc-1.0.so that you already have installed from gtk-vnc-0.4.x instead of to the libgvnc-1.0.so library that was just compiled in /var/tmp/paludis, which results in linking failure. Please (re-)install >=dev-libs/glib-2.30.2. And if that does not remove the 4 .la files I mentioned above (due to paludis having dropped them from vdb at some point in the past, see comment #2), you will need to remove them manually.
I reinstalled glib with both cave and emerge but neither removed the offending la files and gtk-vnc would not install. I then removed the 4 la files manually and that allowed the linking to complete successfully. Note, I rebuilt world on this machine 2 weeks ago yet still was left with .la issues. Seems we need something better than lafilefixer. Thanks, Harris
(In reply to comment #7) > I reinstalled glib with both cave and emerge but neither removed the offending > la files and gtk-vnc would not install. I then removed the 4 la files manually > and that allowed the linking to complete successfully. Good to hear. I have increased gtk-vnc's glib dependency to 2.30.1, the first version guaranteed not to install any .la files, to ensure that nobody stumbles onto the same issue simply due to having an old glib. Unfortunately, there isn't really anything that can be done for those people who had run lafilefixer on a paludis-using system at the time when they had glib-2.28.x or 2.30.0 installed. Perhaps the ChangeLog entry will point them in the right direction. > 20 Jan 2012; Alexandre Rostovtsev <tetromino@gentoo.org> > gtk-vnc-0.5.0.ebuild: > Require >=glib-2.30.1 because presence of glib's .la files can result in > linking failure (bug #399129, thanks to Harris Landgarten for reporting).