Summary: | [vmware overlay] [gcc-5.3.0] app-emulation/vmware-workstation-11.1.2.2780323-r3 USE=bundled-libs : undefined symbols _ZN4Glib* | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Manfred Knick <Manfred.Knick> |
Component: | Current packages | Assignee: | Gentoo VMWare Bug Squashers [disabled] <vmware+disabled> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | phmagic |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
/tmp/vmware-manfred/vmware-apploader-23449.log
emerge --info vmware-workstation > 0_ei-v libvmwareui.so.0 : Undefined symbols beginning with "ZN4Glib" |
Description
Manfred Knick
2015-10-11 14:09:13 UTC
Created attachment 414348 [details]
/tmp/vmware-manfred/vmware-apploader-23449.log
(In reply to Manfred Knick from comment #0) > starting "vmware" _silently_ exits without error message. Created attachment 414374 [details]
emerge --info vmware-workstation > 0_ei-v
(In reply to Manfred Knick from comment #0) > undefined symbol: Some investigation reveiled that a lot of other symbols like > _ZN4Glib* are also undefined. Anybody an idea which lib could be missing? Thx. Concerning Bug 558242 : The behaviour described above is uncorrelated to the openssl version [and corresponding symlink] in use - I already tested that later openssl versions throw the same error. Created attachment 414440 [details]
libvmwareui.so.0 : Undefined symbols beginning with "ZN4Glib"
nm -D /opt/vmware/lib/vmware/lib/libvmwareui.so.0/libvmwareui.so.0
grep "U _ZN4Glib"
I believe I had a similar problem when rebuilding my system with gcc-5.X. Reverting back to 4.9.X solved it for me. (In reply to Kenton Groombridge from comment #7) > I believe I had a similar problem when rebuilding my system with gcc-5.X. Same suspicion meanwhile ... Special suspect : dev-cpp/glibmm-2.44.0:2 > Reverting back to 4.9.X solved it for me. Can you remember if just re-building vmware-* was enough ? Or did you re-built even toolchain etc.? _NOT_ enough: .- emerge -aC vmware-modules vmware-tools vmware-workstation .- switch to gcc-4.9 .- emerge vmware-workstation (and vmware-modules vmware-tools ) /etc/init.d/vmware start : --> same errors ( BUG 562670 ) vmware (applicatgion start) : --> same errors ( this BUG 562836 ) (In reply to Manfred Knick from comment #8) > Or did you re-built even toolchain etc.? I had to rebuild the entire toolchain before I could get vmware-workstation working again. Yes, a pain, but the price we pay by playing with unstable. My suspects are the dev-cpp-entries from BUNDLED_LIB_DEPENDS : dev-cpp/atkmm dev-cpp/cairomm dev-cpp/gtkmm:2.4 dev-cpp/glibmm:2 built with gcc-5.2.0 . (In *cross-reference* to Andreas K. Hüttel) : . . . https://bugs.gentoo.org/show_bug.cgi?id=562764#c10 > If you're using gcc-5, you will *have* to use USE=bundled-libs > > And possibly some additional hacks are needed which I'm still working on (to > make sure libs from /opt/vmware are preferred). > > (c++ libraries compiled with gcc-5 are not binary-compatible.) @ Andreas: Thanks for confirmation Result with bundlded libs: /etc/init.d/vmware: ... vmware-usbarb-8671.log: ... ... same vmware: ... vmware-apploader-8829.log: ... ... same (In reply to Manfred Knick from comment #13) > Result with bundlded libs: > > /etc/init.d/vmware: > ... vmware-usbarb-8671.log: > ... ... same > > vmware: > ... vmware-apploader-8829.log: > ... ... same Sync your overlay and try again. There was something badly wrong with USE=bundled-libs ... (the libraries were removed unconditionally) (In reply to Andreas K. Hüttel from comment #14) > (the libraries were removed unconditionally) Unfortunately, the above note already based upon this morning's git pull, including your fix : ... if ! use bundled-libs ; then ... clean_bundled_libs ... fi Two failing links in ... /opt/vmware/lib/vmware/lib/libvmwarebase.so.0: ... libcrypto.so.0.9.8 -> ... /opt/vmware/lib/vmware/lib/libcrypto.so.0.9.8/libcrypto.so.0.9.8 ... libssl.so.0.9.8 -> ... /opt/vmware/lib/vmware/lib/libssl.so.0.9.8/libssl.so.0.9.8 ... # equery belongs libcrypto.so libvmwarebase.so points to dev-libs/openssl. # equery list -p dev-libs/openssl [IP-] [ ] dev-libs/openssl-0.9.8z_p7:0.9.8 ... [IP-] [ ] dev-libs/openssl-1.0.2d:0 ... # equery files =dev-libs/openssl-0.9.8z_p7:0.9.8 | grep ".so" /usr/lib64/libcrypto.so.0.9.8 /usr/lib64/libssl.so.0.9.8 This points to chapter "src_install()", section "# Bug 432918", working with ... version "0.9.8". But in ... BUNDLED_LIBS_DIR=/opt/vmware/lib/vmware/lib I find corresponding libraries working with ... version "1.0.1": # pwd /opt/vmware/lib/vmware/lib # find . -name libcrypto.so* ./libcrypto.so.1.0.1 ./libcrypto.so.1.0.1/libcrypto.so.1.0.1 # find . -name libssl.so* ./libssl.so.1.0.1 ./libssl.so.1.0.1/libssl.so.1.0.1 @ Andreas: seems one of your fixes got lost ? *cross-reference* : Bug 558242 comment 4 ... https://bugs.gentoo.org/show_bug.cgi?id=558242#c4 ? ALTERNATIVE ? Currrently: RDEPEND=" ... dev-libs/openssl:0.9.8 ... The links matching from system would be # equery files =dev-libs/openssl-0.9.8z_p7:0.9.8 | grep ".so" /usr/lib64/libcrypto.so.0.9.8 /usr/lib64/libssl.so.0.9.8 @ Andreas : Perhaps this entry should be moved to BUNDLED_LIB_DEPENDS also ? Adapted to =dev-libs/openssl-1.0.1* in BUNDLED_LIB_DEPENDS and changed the dosym's accordingly. Still the same as in comment 13 : ... nm -D /opt/vmware/lib/vmware/lib/libcrypto.so.1.0.1/libcrypto.so.1.0.1 ... nm -D /opt/vmware/lib/vmware/lib/libssl.so.1.0.1/libssl.so.1.0.1 ( openssl is unrelated to any _ZN4Glib* symbols . ) (In reply to Manfred Knick from comment #0) > undefined symbol: > _ZN4Glib10spawn_syncERKSsRKNS_11ArrayHandleISsNS_17Container_Helpers10TypeTr > aitsISsEEEENS_10SpawnFlagsERKN4sigc4slotIvNSA_3nilESC_SC_SC_SC_SC_SC_EEPSsSG_ > Pi is being defined in ... /opt/vmware/lib/vmware/lib/libglibmm-2.4.so.1/libglibmm-2.4.so.1 belonging to ... BUNDLED_LIB_DEPENDS= ... ... ... dev-cpp/glibmm:2 grep "glibmm-2" vmware-apploader-19107.log appLoader| I120: Marking libglibmm-2.4.so.1 node as INVALID. appLoader| I120: Marking libglibmm-2.4.so.1 node as SYSTEM. appLoader| I120: libglibmm-2.4.so.1 <SYSTEM> appLoader| I120: Loading system version of libglibmm-2.4.so.1. ==> although being requested as BUNDLED_LIB, <== ==> the _system_ lib gets loaded! , <== which is dev-cpp/glibmm-2.44.0:2 , and which indeed does _not_ provide the requested symbol. ADDENDUM: Forgot to cite: Application call was done by ... $ LD_LIBRARY_PATH="/opt/vmware/lib/vmware/lib/*/" ... && export LD_LIBRARY_PATH ... && vmware (In reply to Manfred Knick from comment #20) > ADDENDUM: > > Forgot to cite: Application call was done by > > ... $ LD_LIBRARY_PATH="/opt/vmware/lib/vmware/lib/*/" > ... && export LD_LIBRARY_PATH > ... && vmware Does this work? LD_LIBRARY_PATH=/opt/vmware/lib/vmware/lib/libglibmm-2.4.so.1/:\ /usr/lib64/gtk-2.0/modules/:\ $LD_LIBRARY_PATH /opt/vmware/bin/vmware This is how I start vmware-worksation merged with the -r1 ebuild, my system is built using gcc-5.2.0. (In reply to Sven Eden from comment #21) > (In reply to Manfred Knick from comment #20) > LD_LIBRARY_PATH=/opt/vmware/lib/vmware/lib/libglibmm-2.4.so.1/:\ > /usr/lib64/gtk-2.0/modules/:\ > $LD_LIBRARY_PATH /opt/vmware/bin/vmware Confirmed with -r3 : . . . "works" := "starts at least" : Only error messages: ... I/O warning : failed to load external entity "/etc/vmware/hostd/proxy.xml" ... I/O warning : failed to load external entity "/etc/vmware/hostd/proxy.xml" ... I/O warning : failed to load external entity "/etc/vmware/hostd/proxy.xml" ... I/O warning : failed to load external entity "/etc/vmware/hostd/proxy.xml" which really does not exist at all. (In reply to Manfred Knick from comment #22) > (In reply to Sven Eden from comment #21) > > (In reply to Manfred Knick from comment #20) > Only ... ADDENDUM: There's more: # grep -i "unable" /tmp/vmware-manfred/*.log | more I120: Unable to dlopen libgtkmm-2.4.so.1 on the system. /usr/lib64/libgiomm-2.4.so.1: undefined symbol: _ZN4Glib11VariantTypeD1Ev I120: Unable to dlopen libgtkmm-2.4.so.1 on the system. /usr/lib64/libgiomm-2.4.so.1: undefined symbol: _ZN4Glib11VariantTypeD1Ev I120: Unable to dlopen libgtkmm-2.4.so.1 on the system. /usr/lib64/libgiomm-2.4.so.1: undefined symbol: _ZN4Glib11VariantTypeD1Ev I120: UUID: Unable to open /sys/firmware/efi/systab: No such file or directory I120: UUID: Unable to open /dev/mem: Keine Berechtigung I120: HostDeviceInfoFindHostIDECDROMs: /proc/ide could not be explored. Unable to enumerate host IDE cdroms. I120: HostDeviceInfo_FindHostParallelPorts: /proc/sys/dev/parport could not be explored. Unable to enumerate host parallel ports. I120: Unable to check configure-hostd.sh: Kindprozess »/opt/vmware/lib/vmware/bin/configure-hostd.sh« konnte nicht ausgeführt werden (Datei oder Verzeichnis nicht gefunden) I120: UUID: Unable to open /sys/firmware/efi/systab: Datei oder Verzeichnis nicht gefunden I120: UUID: Unable to open /dev/mem: Keine Berechtigung I120: HostDeviceInfoFindHostIDECDROMs: /proc/ide could not be explored. Unable to enumerate host IDE cdroms. I120: HostDeviceInfo_FindHostParallelPorts: /proc/sys/dev/parport could not be explored. Unable to enumerate host parallel ports. UPDATE: kernel 4.3.3-gentoo sys-devel/gcc-5.3.0 vmware-workstation-11.1.2.2780323-r3 ( from layman overlay ) Applying https://bugs.gentoo.org/show_bug.cgi?id=561252 and https://bugs.gentoo.org/show_bug.cgi?id=565060 , > LD_LIBRARY_PATH=/opt/vmware/lib/vmware/lib/libglibmm-2.4.so.1/:\ > /usr/lib64/gtk-2.0/modules/:\ > $LD_LIBRARY_PATH /opt/vmware/bin/vmware (comment #21) started and I could begin to setup a linux guest. Without wrangling LD_LIBRARY_PATH, it failed silently as described earlier. This should be fixed now, finally. If you still have problems, please check two things: 1) does /etc/env.d/90vmware exist and have a line VMWARE_USE_SHIPPED_LIBS=1 ??? 2) is that variable in your environment when vmware is started? if 1) and not 2), it might make sense to re-login... |