solved: vmware does not work anymore

After some system update, vmware stopped working. It wrote some information which modules are loaded, and then silently exited. In a log file “ui-NNNN.log”, I found: “vmui| Caught signal 11”. The stacktrace said only that the crash was likely due to some signal.

Search in internet gave only one suggestion: use the gtk libraries, which are shipped together with vmware, not the system ones. Did not help.

But what if to force to use all the shipped libraries instead of the system ones?

Yet another log file, “appLoader-NNN.log” traces loading of libraries. A Python script to process it:

import sys, re

re_so = re.compile('LOG NOT INITIALIZED \\| (.*so)[0-9.]* <SYSTEM>')

fname = sys.argv[1]
h = open(fname)
for l in h:
  m = re_so.search(l)
  if m:
    s_so = m.group(1)
    print 'mv /usr/lib/%s* /usr/lib/tmp/' % s_so
h.close()

After processing the log, I get a file “move.sh”:

mv /usr/lib/libsexy.so* /usr/lib/tmp/
mv /usr/lib/libart_lgpl_2.so* /usr/lib/tmp/
mv /usr/lib/libXrandr.so* /usr/lib/tmp/
...

(This codes only for my backup reasons, do not even try to use it unless you understand it completely.)

With all these libraries “removed”, vware started.

Using bisection, I found that in my case the bad library was “libgiomm”.

Repair script is:

#!/bin/sh

( \
mv /usr/lib/libgiomm-2.4.so.1 /usr/lib/libgiomm-2.4.so.1.3.0 /usr/lib/tmp/; \
  sleep 5; \
mv /usr/lib/tmp/libgiomm-2.4.so.1 /usr/lib/tmp/libgiomm-2.4.so.1.3.0 /usr/lib/ \
) &
sleep 1
vmware

Leave a Reply