[SOLVED] Minecraft crashes on intel 3000hd, giving libdrm error
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.
Minecraft crashes on intel 3000hd, giving libdrm error
Hey all, I've got a problem trying to run Minecraft on my Slackware 13.37 x86_64 box. It's got the intel integrated 3000 HD graphics chip and I'm running the 2.6.37.6 kernel. Minecraft crashes as soon as it logs in (after downloading the files). Each time, it gives me this error:
Code:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f8484e5e1aa, pid=4217, tid=140207181317888
#
# JRE version: 6.0_25-b06
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.0-b11 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libdrm_intel.so.1+0x61aa] double+0x231a
#
# An error report file with more information is saved as:
# /home/jay/hs_err_pid4217.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#
Aborted
I've tried updating libdrm to 2.4.25 and mesa to 7.10.2, but updating libdrm alone doesn't fix the problem, and updating mesa along with libdrm gives me a libgl error on both minecraft and kmix.
I would really appreciate some help with this if you can.
I run a private Minecraft server for my son and his friends (version 1.8.1 beta), and I have no problem at all connecting to it and "playing". I have Slackware-current (x86_64) on my own machine, a Lenovo T400 laptop with Intel graphics card supported by the i915 driver.
Slackware-current has a version of Java which is a bit more recent than on your Slackware 13.37. You can safely upgrade your jre package (or jdk package if you have that installed instead) using the package you find in the 64bit slackware-current tree. Perhaps that solves your crashes.
I looked for an update for that package, but couldn't find one. The package in -current looks like the same version (2.15.0). Does someone have a newer version, or do I need to compile it from source?
Current should have the most up to date version of the Intel driver. If it's the same and most up-to-date then perhaps it's another issue.
I found this article that MAY be of some assistance.
Code:
http://timashley.me/node/596
It's aimed mostly at Ubuntu but you shouldn't have any issues converting the help over to Slackware. The issues surrounding Minecraft seem to be centered on the Java engine being distributed currently with Linux distros and having to manually patch and replace JAR files in the Minecraft folder(s).
Now, I'll say this, and currently, there is no other recommendation for or against this, but Oracle has JRE/JDK version 7.x out on their website. These versions are NOT supported or endorsed by the open source community due to the nature or the new licensing (with the exception of the OpenJDK which may or may not contain the same code base). However, these versions may not have patches that could fix the compatibility issues currently known with Java applications whereas the official version might..
Well, I grabbed the 7.0 version of JDK, and... it gave me a different error:
Code:
Exception in thread "Minecraft main thread" java.lang.UnsatisfiedLinkError: /home/jay/.minecraft/bin/natives/liblwjgl.so: /home/jay/.minecraft/bin/natives/liblwjgl.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1928)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1825)
at java.lang.Runtime.load0(Runtime.java:792)
at java.lang.System.load(System.java:1059)
at org.lwjgl.Sys$1.run(Sys.java:69)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
at org.lwjgl.Sys.loadLibrary(Sys.java:81)
at org.lwjgl.Sys.<clinit>(Sys.java:98)
at org.lwjgl.opengl.Display.<clinit>(Display.java:132)
at net.minecraft.client.Minecraft.a(SourceFile:183)
at net.minecraft.client.Minecraft.run(SourceFile:629)
at java.lang.Thread.run(Thread.java:722)
This looks to me like it has to do with the fact that I'm running a 64 bit OS. Am I correct?
EDIT: ReaperX7: I haven't been able to work through your first link yet to see if it works due to kernel.org still being down.
(side note: I still can't believe it's this hard to get it running on a newer version of the software when it ran perfectly first time on 13.1)
I'm guessing this could be a problem due to the architecture.
Minecraft seems to be a 32-bit application (at least only from deciphering the error message), but you are running a 64-bit OS. This can cause a lot of problems. Be glad you tried Java 7 because it gave the readout.
There are two solutions I can maybe think of to remedy the situation:
1. Is to install AlienBOB's Multilib packages and try installing the 32-bit converted multilib packages for libdrm, mesa, and java and see if they help any. Eric can guide you through the install, setup, and such, way better than I can (I actually don't use multilib).
2. See if a 64-bit version of Minecraft is available and try using it.
Well, I tried going multilib via AlienBOB's packages, grabbed the 32-bit version of java 7, stuck it in /usr/lib, and got a different error:
Code:
jay@boromir:~$ /usr/lib/jre1.7.0/bin/java -cp /usr/local/bin/minecraft.jar net.minecraft.LauncherFrame
17 achievements
161 recipes
Setting user: Halborr, -6097314047470002175
Exception in thread "Minecraft main thread" java.lang.UnsatisfiedLinkError: /home/jay/.minecraft/bin/natives/liblwjgl.so: libjawt.so: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at org.lwjgl.Sys$1.run(Sys.java:69)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
at org.lwjgl.Sys.loadLibrary(Sys.java:81)
at org.lwjgl.Sys.<clinit>(Sys.java:98)
at org.lwjgl.opengl.Display.<clinit>(Display.java:132)
at net.minecraft.client.Minecraft.a(SourceFile:183)
at net.minecraft.client.Minecraft.run(SourceFile:629)
at java.lang.Thread.run(Unknown Source)
^Cjay@boromir:~$
I'm starting to actually consider distro hopping. I've got a friend who's running fedora on basically the same hardware, and minecraft ran perfectly first time.
EDIT: I found This page, tried it, and got yet another error:
Code:
jay@boromir:~$ /usr/lib/jre1.7.0/bin/java -jar /usr/local/bin/minecraft.jar
17 achievements
161 recipes
Setting user: Halborr, 960106096180270180
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0xb1f391b9, pid=32639, tid=2990562160
#
# JRE version: 7.0-b147
# Java VM: Java HotSpot(TM) Server VM (21.0-b17 mixed mode linux-x86 )
# Problematic frame:
# C [libdrm_intel.so.1+0x61b9] drm_intel_bufmgr_fake_init+0x2459
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/jay/hs_err_pid32639.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted
jay@boromir:~$
OK, at the moment you have a complete mess of Java packages from all around the globe and for incompatible architectures too.
Remove all of the Java cruft you have been adding, and then install the 64bit JDK package of Slackware -current (because there you will find the newest JDK release and it will work on Slackware 13.37... see http://slackware.osuosl.org/slackwar...t/extra/jdk-6/). Then you have to logout, and login again to configure your JAVA environment properly.
On to libdrm and mesa. I would expect that upgrading to the packages in the "testing" directory of Slackware 13.37 does not give you any library errors because those packages are compiled on Slackware 13.37 just like their originals. Try again upgrading to both libdrm-2.4.25 and mesa-7.10.2 as found in http://slackware.osuosl.org/slackwar...ting/packages/ . This should only cause trouble if you had previously installed a proprietary NVIDIA or ATI driver (you'd have to install them again because the mesa package overwrites some of the proprietary OpenGL drivers).
I am running my minecraft client on Slackware-current (64bit) and have no issues. Perhaps it is time to upgrade to slackware64-current too? Changing distro just because of a stupid game is not the wisest decision you could make, but oh well.
I'm using the xf86-video-intel-2.15.0-i486-1 driver on 13.37 on one of my machines and have no issues running the Minecraft client with jre-6u26-i586-1 (I also host a server on the same machine).
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.