vmware outputs the following error on startup: /opt/vmware/workstation/lib/bin/vmware: /opt/vmware/workstation/lib/lib/libpng12.so.0/libpng12.so.0: no version information available (required by /usr/lib/libcairo.so.2) /opt/vmware/workstation/lib/bin/vmware: relocation error: /usr/lib/libcairo.so.2: symbol png_set_expand_gray_1_2_4_to_8, version PNG12_0 not defined in file libpng12.so.0 with link time reference /opt/vmware/workstation/lib/bin/vmware: /opt/vmware/workstation/lib/lib/libpng12.so.0/libpng12.so.0: no version information available (required by /usr/lib/libcairo.so.2) /opt/vmware/workstation/lib/bin/vmware: /opt/vmware/workstation/lib/lib/libpng12.so.0/libpng12.so.0: no version information available (required by /usr/lib/libcairo.so.2) /opt/vmware/workstation/lib/bin/vmware: symbol lookup error: /usr/lib/libcairo.so.2: undefined symbol: FT_GlyphSlot_Embolden See also bug #146614. As a fix you can apply the folling patch to /opt/vmware/workstation/lib/lib/wrapper-gtk24.sh --- wrapper-gtk24.sh.org 2007-07-15 21:26:04.000000000 +0200 +++ wrapper-gtk24.sh 2007-07-15 21:26:07.000000000 +0200 @@ -258,7 +258,7 @@ # Redhat-7.3 doesn't have libpng12.so.0. the executable doesn't link to # it directly, so we explicitly include it here # -vm_append_lib 'libpng12.so.0' +#vm_append_lib 'libpng12.so.0' # # When environment variable VMWARE_USE_SHIPPED_GTK is set to "force", we Would be nice if you could include that in the distribution if you don't see any negative effects. Reproducible: Always Steps to Reproduce:
Please, post your emerge --info.
Portage 2.1.2.9 (default-linux/x86/2006.1/desktop, gcc-3.4.6-hardened, glibc-2.5-r4, 2.6.20-gentoo-r8 i686) ================================================================= System uname: 2.6.20-gentoo-r8 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ Gentoo Base System release 1.12.9 Timestamp of tree: Sun, 15 Jul 2007 19:30:10 +0000 ccache version 2.4 [enabled] dev-java/java-config: 1.3.7, 2.0.33-r1 dev-lang/python: 2.4.4-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r7 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.16 sys-devel/libtool: 1.5.23b virtual/os-headers: 2.6.21 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=k8 -msse3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-O2 -march=k8 -msse3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo http://gentoo.osuosl.org/" LANG="de_DE@euro" LINGUAS="de" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" 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 --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X Xaw3d a52 aac aalib accessibility acl acpi aim alsa apache2 apm arts audiofile avi bash-completion bcmath berkdb bitmap-fonts bluetooth bzip2 cairo calendar caps cdb cdparanoia cdr cli cracklib crypt cscope cups curl curlwrappers dbm dbus dga dio directfb doc dri dv dvb dvd dvdr dvdread eds emacs emboss encode esd ethereal examples exif fam fastcgi fbcon ffmpeg fftw firefox flac flash flatfile foomaticdb fortran freetds ftp gd gdbm geoip gif ginac glut gmp gnome gnutls gphoto2 gpm gps gstreamer gtk gtk2 guile hal hardened hardenedphp howl icc iconv icq ieee1394 imagemagick imap imlib innodb iodbc ipv6 isdnlog jabber jack java javascript joystick jpeg kde kdeenablefinal kerberos krb4 ladcca lcms ldap leim lesstif libcaca libg++ libgda libwww lirc lm_sensors mad maildir matroska mcal mcve memlimit mhash midi mikmod milter mime ming mmap mmx mng mono motif mozilla mp3 mpeg mpi msession msn mudflap mule mysql mysqli nas ncurses netcdf nls nocd nptl nptlonly nsplugin offensive ofx ogg openal opengl openmp osc oscar oss pam pcntl pcre pda pdf perl pfpro php plotutils png portaudio posix ppds pppd python qt qt3 qt4 quicktime radius readline recode reflection ruby samba sasl scanner sdl session sharedext sharedmem shorten simplexml skey slang slp smartcard sndfile snmp soap sockets socks5 sox speex spell spl sqlite sse sse2 ssl svg svga tcltk tcpd tetex theora threads tidy tiff tokenizer truetype truetype-fonts type1-fonts unicode usb v4l vcd vhosts videos vorbis wddx win32codecs wmf wxwindows x86 xface xine xml xml2 xmlrpc xorg xpm xprint xsl xv xvid yahoo yaz zeo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa vga" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
There is a similar problem in vmware-player with an undefined symbol. The simple fix is to put export VMWARE_USE_SHIPPED_GTK=yes as the first line of /opt/vmware/player/bin/vmplayer instead of putting it in the patch script.
I disagree with the solution proposed in Comment 3. I think that it is appropriate to use the system provided libraries exclusively _wherever_ possible. I am not a vmware-server user but found this bug just now after talking a user through the problem on IRC. As such, I noticed that the system-provided cairo was being used in conjunction with the libpng binary bundled with vmware-server (which is obviously asking for trouble). As such, I asked him to simply move the bundled libpng elsewhere and, hey presto, vmware-server was evidently OK with using the system-provided libpng and the problem was duly solved. The exact same situation has been discussed in the forums also: http://forums.gentoo.org/viewtopic-t-571770.html Surely it is sensible to defer to the use of system provided libraries, except where to do so is definitively _proven_ to render the package incompatible with Gentoo. In view of that, I think that setting VMWARE_USE_SHIPPED_GTK=yes is a sloppy solution. My main concern is with security; we can manage our own packages but we can't manage that which is provided with upstream "binware". Also, Hardened Gentoo users should be allowed to benefit from the full range of protections that the hardened toolchain/kernel allows for, which obviously is not possible with the bundled libraries.
The vmware team will not be adding VMWARE_USE_SHIPPED_GTK, for exactly the reasons specified by Kerin (those of security). We are still investigating the best solution that maintains the ability to fall back to the non-system libraries when necessary whilst still primarily utilizing system libraries where possible. However, since this issue is fairly easily fixed, it's quite low on the priority list at the moment unfortunately...
We *could* make sure that every library used by VMware is available in the tree and enforce certain USE combinations to ensure we don't end up with missing symbols and such, but without USE-based dependencies, it would be a nightmare, as the VMware products would all have to do built_with_use checks and die. Users could potentially have to babysit the install for quite some time, changing USE flags like crazy until they got it to work. I see no problem with adding in the 1-liner from the bug poster, but I agree that defaulting to using the built-in libraries is less than ideal. It would probably make more sense to write our own start-up script for VMware to force the use of the built-in libraries for ones we know don't work using the system libs and using the system libs for the rest. At least VMware makes it easy for us by putting all the libraries in separate directories.
*** Bug 191935 has been marked as a duplicate of this bug. ***
*** Bug 192022 has been marked as a duplicate of this bug. ***
I'm getting what I think is due to the same problem: $ vmplayer /opt/vmware/player/lib/bin/vmplayer: symbol lookup error: /opt/vmware/player/lib/lib/libvmwareui.so.0/libvmwareui.so.0: undefined symbol: _ZN3Gtk6Widget14get_accessibleEv This is with vmware-player-2.0.1.55017(05:21:14 PM 10/16/2007). Using the shipped GTK works (albeit noisily) now, although I swear it didn't when I tried it last week: $ VMWARE_USE_SHIPPED_GTK=force vmplayer ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvas-2.so.0/libgnomecanvas-2.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libglade-2.0.so.0/libglade-2.0.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvasmm-2.6.so.1/libgnomecanvasmm-2.6.so.1' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvas-2.so.0/libgnomecanvas-2.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libglade-2.0.so.0/libglade-2.0.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvasmm-2.6.so.1/libgnomecanvasmm-2.6.so.1' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvas-2.so.0/libgnomecanvas-2.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libglade-2.0.so.0/libglade-2.0.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvasmm-2.6.so.1/libgnomecanvasmm-2.6.so.1' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvas-2.so.0/libgnomecanvas-2.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libglade-2.0.so.0/libglade-2.0.so.0' from LD_PRELOAD cannot be preloaded: ignored. ERROR: ld.so: object '/opt/vmware/player/lib/lib/libgnomecanvasmm-2.6.so.1/libgnomecanvasmm-2.6.so.1' from LD_PRELOAD cannot be preloaded: ignored. /usr/share/themes/Clearlooks/gtk-2.0/gtkrc:68: error: unexpected identifier `colorize_scrollbar', expected character `}' Fontconfig warning: no <cachedir> elements found. Check configuration. Fontconfig warning: adding <cachedir>/var/cache/fontconfig</cachedir> Fontconfig warning: adding <cachedir>~/.fontconfig</cachedir> [runs...] $ emerge --info Portage 2.1.3.16 (default-linux/x86/2007.0, gcc-4.2.2, glibc-2.6.1-r0, 2.6.22-gentoo-r6 i686) ================================================================= System uname: 2.6.22-gentoo-r6 i686 Genuine Intel(R) CPU T2400 @ 1.83GHz Timestamp of tree: Mon, 29 Oct 2007 21:20:02 +0000 ccache version 2.4 [disabled] app-shells/bash: 3.2_p17-r1 dev-java/java-config: 1.3.7, 2.1.2-r1 dev-lang/python: 2.4.4-r6, 2.5.1-r3 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.10-r5 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.24 virtual/os-headers: 2.6.23 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=prescott -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=prescott -O3 -pipe -fomit-frame-pointer -fvisibility-inlines-hidden" DISTDIR="/usr/local/media/distfiles" FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://mirror.cc.vt.edu/pub/gentoo/ http://www.gtlib.gatech.edu/pub/gentoo/ http://distfiles.gentoo.org/" LANG="en_US.utf8" LC_ALL="en_US.utf8" LDFLAGS="-Wl,-O1" LINGUAS="en de" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" 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 --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/usr/local/media" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/custom-kernels /usr/portage/local/layman/sunrise /home/chris/workspace/ossie_installation/scripts/gentoo" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi aim alsa amr avahi bash-completion beagle berkdb bitmap-fonts bittorrent bl bluetooth branding bzip2 cairo cddb cdparanoia cdr ch chm cli cracklib crypt cups curl curlwrappers dbus dbx de_tvtoday dga directfb djvu dri dts dv dvb dvd dvdnav dvdr dvdread encode exif fam fbcon ffmpeg firefox flac flatfile fortran ftp galago gcj gdbm gif glibc-omitfp glut gmp gnome gnutls gphoto2 gpm gps gstreamer gtk hal hardened iconv icq idn ieee1394 imlib ipv6 isdnlog jabber java javascript jpeg kdehiddenvisibility keyring latex libcaca libnotify mad mbrola midi mikmod mmx mng modplug mono mp3 mpeg msn mudflap musicbrainz ncurses nls nocd nptl nptlonly nsplugin offensive ofx ogg opengl openmp oscar pam pcmcia pcre pda pdf perl png ppds pppd python qq quicktime readline real reflection samba sdl session silc smp sockets socks5 speex spell spl sse sse2 ssl svg sysfs syslog sysvipc tcpd theora threads thunderbird tidy tiff truetype truetype-fonts type1-fonts unicode usb vcd videos vorbis wifi wmf wxwindows x264 x86 xcb xcomposite xorg xpm xscreensaver xv xvid yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev keyboard magictouch mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" USERLAND="GNU" VIDEO_CARDS="i810 vesa" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Chris, you're getting the missing symbol issue because you probably don't have gtkmm compiled with the accessibility USE flag set. Please try setting it (and then also recompiling libview and libsexy) and then give that a go. Thanks... 5:)
(In reply to comment #11) > Chris, you're getting the missing symbol issue because you probably don't have > gtkmm compiled with the accessibility USE flag set. Please try setting it (and > then also recompiling libview and libsexy) and then give that a go. Thanks... > 5:) > That was indeed my problem, thanks.
*** Bug 200892 has been marked as a duplicate of this bug. ***
I, in fact, did rebuild gtkmm with the accessibility USE flag and got this as a result: einstein ~ $ vmware /opt/vmware/workstation/lib/bin/vmware: symbol lookup error: /opt/vmware/workstation/lib/lib/libvmwareui.so.0/libvmwareui.so.0: undefined symbol: _ZThn12_N4view10FieldEntry17delete_text_vfuncEii When I did 'export VMWARE_USE_SHIPPED_GTK=yes' I got vmware to work. Is this symbol undefined from some other issue?
After you've rebuilt gtkmm with USE="accessibility", please recompile libsexy, libsexymm and libview and then try it again without the VMWARE_USE_SHIPPED_GTK. Hopefully that should solve the problems and everything will work. If not, please report back here and let me know. Thanks... 5:)
(In reply to comment #15) > After you've rebuilt gtkmm with USE="accessibility", please recompile libsexy, > libsexymm and libview and then try it again without the VMWARE_USE_SHIPPED_GTK. > Hopefully that should solve the problems and everything will work. If not, > please report back here and let me know. Thanks... 5:) > Would it be possible to also put a note in pkg_setup about rebuilding these libraries in addition to gtkmm?
I also received a /opt/vmware/player/lib/bin/vmplayer: symbol lookup error: /opt/vmware/player/lib/lib/libvmwareui.so.0/libvmwareui.so.0 I fixed it re-emerging libview
Your suggestion is still not implemented. Just upgraded to vmware-workstation-6.5.1.126130, got the hint for rebuilding gtkmm with accessiblity use flag and got the "undefined" error. After reemerging libview, libsexy (and libsexymm, even though it was not needed) vmware was working again. To mention to reemerge these packages after reemerging gtkmm would be a GREAT help.
Rebuilding libsexy and libview solved these unresolved symbol issues for me. So yes, I vote for a note to be placed in the vmware-workstation ebuild warning that libsexy and libview may need re-emerging.
*** Bug 256114 has been marked as a duplicate of this bug. ***
*** Bug 262155 has been marked as a duplicate of this bug. ***
*** Bug 207243 has been marked as a duplicate of this bug. ***
*** Bug 204260 has been marked as a duplicate of this bug. ***
Alright, it looks like this bug might once and for all be fixed. gtkmm is now always built with the atkmm API/ABI, meaning that once it's rebuilt, and anything it used (libsexymm, libview, etc) are rebuilt, this problem goes away. I'm therefore going to mark this as FIXED. Please note, this is pretty much identical to setting USE="accessibility" and doing the rebuilds that were previously done, so if you've already undertaken that step, you don't really need to do anything. If you're new to this bug, please sync with the main tree, rebuild gtkmm, rebuild libview, libsexy and libsexymm, and then run a revdep-rebuild just to be safe...
*** Bug 266786 has been marked as a duplicate of this bug. ***