vmware fails to load after update of libX11-1.1.5 from -current (+solution)
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
After banging my head a few times on the table and doing some research on the internet, I found a workaround.
Basically, this quick-and-dirty script compiles a second libX11 library without xcb until the problem is solved.
It also creates a one-line script to start vmware with this alternative lib:
Just run this script as root.
It might take a few minutes to compile the library (depending on your system).
After this, start vmware with 'vmware-start.sh' as a normal user.
Do not forget to update the entries in your desktop menu.
XCB has broken things in the past, and I'd be happy to turn it off *if* that's what most people want. However, there is quite a performance penalty involved with that. But, better for things to work, right? Things not working is the ultimate performance penalty.
The last time libX11+XCB broke, a small patch fixed everything. Maybe there's a patch like that out there again?
Could the upgrade from libxcb-1.0 to libxcb-1.1 have caused this? I don't run vmware, but maybe someone could try the libxcb package from Slackware 12.1 to see if it helps...
That is good to hear. I thought perhaps XCB could have been the cause of the ImageMagick convert {eps,ps} to other formats issue, but it seems that isn't the case. Oh well... anyone with a handle on that one, please post.
Step 1:
Testing with 'vmware' (without the 'LD_PRELOAD=/usr/local/lib/libX11.so' before it) gives the xcb assertion error.
Testing with 'vmware-start.sh' (with the 'LD_PRELOAD=/usr/local/lib/libX11.so' before calling 'vmware') works fine.
Step 2:
I did a "upgradepkg" (actual downgrade) of the following three items:
libX11-1.1.4-i486-1.tgz
libxcb-1.0-i486-2.tgz
xcb-proto-1.0-noarch-1.tgz
Result: nothing... still the same error when starting vmware directly.
Step 3:
So I got confused...
And started checking other packages I updated from -current
And found out that the culprit is gtk+2-2.12.12
I 'upgradepkg'-ed it to gtk+2-2.12.9 from the slackware 12.1 CD and vmware now starts without problems.
Step 4:
Now just to be sure...
Upgraded again to:
libX11-1.1.5-i486-1.tgz
libxcb-1.1-i486-1.tgz
xcb-proto-1.1-noarch-1.tgz
And vmware is still working fine!
Step 5:
Next test: upgrade to gtk+2-2.12.12
And yes, vmware returns the error again...
Step 6:
Downgraded again to gtk+2-2.12.9
And everything is fine... vmware starts without problems.
Conclusion:
There is something wrong with gtk+2-2.12.12 that causes the error in xcb
Hope I've been of any help!
I'll stick to gtk+2-2.12.9 for now
Last edited by niels.horn; 09-20-2008 at 07:31 PM.
Reason: (correcting typos)
After discovering the real cause, I googled around again...
Found this link mentioning the same problem happening since gtk2-2.12.10 in archlinux, but no solution was found other than downgrading gtk2 or compiling libX11 with the '--without-xcb' option as I did in my original post.
Well, the question then becomes: Should Slackware be blocked from upgrading open source libraries because doing so breaks proprietary software? If nothing else is "broken", is this a "regression"?
I'm real curious how this one can be answered.
Like I mentioned, I do not have a copy of vmware, but I'll bet they compile it against an old version of GTK+ to try to be compatible with old systems (or ones that backport patches rather than following upstream). Someone who does have access to vmware might be able to verify this using "strings", "less", or other tools that can peek behind the paneling.
Probably recompiling vmware against -current will clear this issue up. Can someone get on that? <sigh... binary-only blobs...>
Since I really need vmware I wouldn't mind spending more time to find a definite solution, like compiling vmware from scratch, but vmware is just free, not open...
So, I better turn back to the solution from my original post:
- upgrade (open source) gtk to the new version
- use a workaround to keep (proprietary) vmware functioning with a custom libX11 library
This way my slackware-current stays 100% current
After all, I use -current on this machine because it is more fun... Discovering this kind of glitches and their solutions is what keeps me sharp.
Well, the question then becomes: Should Slackware be blocked from upgrading open source libraries because doing so breaks proprietary software?
Dear Patrick, of course, the answer is NO!
Free software must continue its development and growth, regardless of the proprietary software.
Quote:
Originally Posted by niels.horn
So, I better turn back to the solution from my original post:
- upgrade (open source) gtk to the new version
- use a workaround to keep (proprietary) vmware functioning with a custom libX11 library
This way my slackware-current stays 100% current
I installed VMware Server 1.0.8 on Slackware 12.2 and the server works.
Actually I had to install the following vmware update, because of some incompatibilities between vmware and the kernel 2.6.27: http://www.insecure.ws/warehouse/vmw...5.5.7-2.tar.gz
Then I installed VMware Server Console 1.0.8 on the same Slackware 12.2 machine successfully, but when I try to start the console with the command:
So, I tried to use your first solution, which I consider a better solution, compared with the downgrade of gtk. However it did not work for me.
I tried with the command:
LD_PRELOAD=/usr/local/lib/libX11.so vmware-server-console
but nothing happened. The xcb_lock error didn't appeared anymore, but the console window was not opened and the program immediately returned.
I installed VMware Server 2.0 on another Slackware 12.2 machine and everything is fine. However I need VMware Server 1.0.x because I have to use VMware Studio 1.0, which is only compatible with VMware Server 1.0.x.
Any hints about how to solve this problem on the stable Slackware 12.2?
Any hints about how to solve this problem on the stable Slackware 12.2?
Are you using KDE?
Check if it works under Xfce.
I know it sounds strange, but on my machine it works fine on Xfce and gives the assertion error when I use KDE.
Are you using KDE?
Check if it works under Xfce.
I know it sounds strange, but on my machine it works fine on Xfce and gives the assertion error when I use KDE.
Yes, I'm using KDE.
I will try under Xfce. However, I hope to find a good solution for KDE.
thanks to the Slacky community (www.slacky.eu), especially cacao74, I finally succeeded to make VMware Server Console 1.0.x work under Slackware 12.2 with KDE 3.5.10.
I installed VMware Server 2.0 on another Slackware 12.2 machine and everything is fine.
How did you get VMWare Server 2.0 to work with Slack 12.2? I've been struggling with this myself and have come to the conclusion that VMWare Server 2 requires PAM support, which Slack doesn't have.
Do I need to install PAM (and where from...?)
Anyone have any ideas? Is there something else which I've overlooked?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.