GithubHelp home page GithubHelp logo

Comments (8)

zaafonin avatar zaafonin commented on August 15, 2024 1

Further observations.

  1. The X11 segfault can be fixed by downgrading lib32-libx11 to 1.6.8 (gosh that's ancient)

  2. Segfaulting in libglvnd:

Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf799c311 in __glDispatchCheckMultithreaded () at ../libglvnd-v1.6.0/src/GLdispatch/GLdispatch.c:785
785                 if (__glvndPthreadFuncs.equal(firstThreadId, GLVND_THREAD_NULL)) {  

can be fixed by compiling the master branch of libglvnd for x86 and LD_PRELOADing libGLdispatch.so. Probably will be the only solution until the fix lands into the 2023 release. After this, you will finally get to the main menu:
image
You will be able to navigate the menu freely, create a world, but half a second later you will be met with another segfault.

  1. Next problem you'll encounter is a mystery segfault somewhere deep in amd drivers:
Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf6d23620 in amdgpu_bo_va_op (bo=0x568ebb40, offset=0, size=2097152, addr=4303355904, flags=0, ops=2)
    at ../libdrm-2.4.115/amdgpu/amdgpu_bo.c:754
Downloading source file /usr/src/debug/lib32-libdrm/build/../libdrm-2.4.115/amdgpu/amdgpu_bo.c
754     ../libdrm-2.4.115/amdgpu/amdgpu_bo.c: Directory not empty.           

(can also be "Bad file descriptor" or something else). Sometimes you will be able to avoid the segfault altogether (or rather skip to the next segfault), either by pure luck or by doing run in gdb after the segfault has happened, which restarts ninecraft. Again, I have no idea how or why this happens. This might be an AMD-exclusive problem.

Surprisingly, this problem disappears if you switch to Zink (can be done with MESA_LOADER_DRIVER_OVERRIDE=zink). However, on AMD you'll need to install lib32-amdvlk instead of lib32-vulkan-radeon. The importance of this will be explained further.

  1. Next segfault happens in libXi, possibly because it isn't downgraded together with libx11:
Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf77821f4 in XInputWireToCookie (dpy=0x56690c30, cookie=0x569962d4, event=0x56f5a5f0)
    at /usr/src/debug/lib32-libxi/libXi-1.8.1/src/XExtInt.c:1007
1007                *cookie = *(XGenericEventCookie*)save;      

Unfortunately, Arch doesn't have libXi 1.6.8 in its repos anymore, so the downgrade isn't really possible. I took a radical approach and switched to Wayland (no matter how I dislike this thing). Despite GLFW_BUILD_WAYLAND already being used in the code, I couldn't force ninecraft to use it (even with glfwWindowHint(GLFW_PLATFORM, GLFW_PLATFORM_WAYLAND); for some reason).

What helped is screwing with CMakeLists.txt of the bundled glfw, specifically with lines 40 and 41:

cmake_dependent_option(GLFW_BUILD_X11 "Build support for X11" OFF "UNIX;NOT APPLE" OFF)
cmake_dependent_option(GLFW_BUILD_WAYLAND "Build support for Wayland" ON "UNIX;NOT APPLE" OFF)

This is 100% bad code, but it does the job of forcing glfw (and ninecraft) to use Wayland. Finally the binary starts, the world loads and the game works.
image

P.S. On importance of lib32-amdvlk and other 32-bit libs:

For Zink, it would be logical to use lib32-vulkan-radeon as it's pretty much the default choice for Vulkan drivers on AMD. However, this package depends on lib32-systemd among other stuff, and while I'm not a systemd hater by all means, mcpe on ninecraft surely is:

Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xd011e252 in stpcpy (__src=<optimized out>, __dest=<optimized out>, __dest=<optimized out>, __src=<optimized out>)
    at /usr/include/bits/string_fortified.h:86
86        return __builtin___stpcpy_chk (__dest, __src, __glibc_objsize (__dest));

Backtrace shows the culprit is libsystemd:

(gdb) bt
#0  0xd011e252 in stpcpy (__src=<optimized out>, __dest=<optimized out>, __dest=<optimized out>, __src=<optimized out>)
    at /usr/include/bits/string_fortified.h:86
#1  sd_machine_get_class (machine=0xffffce80 "borobox", class=0xffffcbf8)
    at ../systemd-stable/src/libsystemd/sd-login/sd-login.c:1076
#2  0xd0113a67 in _nss_mymachines_gethostbyname3_r (name=0xffffce80 "borobox", af=<optimized out>, result=0xf7a279c0 <resbuf>, 
    buffer=0x57726010 "", buflen=1024, errnop=0xf7a3d190, h_errnop=0xffffce3c, ttlp=0x0, canonp=0x0)
    at ../systemd-stable/src/nss-mymachines/nss-mymachines.c:274
#3  0xd0114251 in _nss_mymachines_gethostbyname_r (name=0xffffce80 "borobox", host=0xf7a279c0 <resbuf>, buffer=0x57726010 "", 
    buflen=1024, errnop=0xf7a3d190, h_errnop=0xffffce3c) at ../systemd-stable/src/nss-mymachines/nss-mymachines.c:404
#4  0xf79383cd in __gethostbyname_r (name=<optimized out>, resbuf=<optimized out>, buffer=<optimized out>, 
    buflen=<optimized out>, result=<optimized out>, h_errnop=<optimized out>) at ../nss/getXXbyYY_r.c:273
--Type <RET> for more, q to quit, c to continue without paging--
#5  0xf79378f7 in gethostbyname (name=0xffffce80 "borobox") at ../nss/getXXbyYY.c:139
#6  0xd7f8aa97 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

It looks like if lib32-systemd is installed, gethostbyname happens via libsystemd, where the segfault happens most probably because of a yet another ABI incompatibility. The only solution I've found is not having lib32-systemd in your system. lib32-amdvlk doesn't have it as a dependency, and that's why it's the best solution unless either the systemd dependency is circumvented or the underlying bug is fixed.

This problem is also present with lib32-pipewire and lib32-libpulse. For now I haven't found a way to use ninecraft with sound.

In conclusion, this problem looks like a whole can of worms resulting from the nonexistent culture of ABI compatibility in Linux systems. While the described manipulations worked on my machine, this might not be possible on systems without Vulkan, or Wayland or other stuff I don't know about. TL;DR: desktop Linux sucks

from ninecraft.

zaafonin avatar zaafonin commented on August 15, 2024

0.5.0 produces a slightly different result:

Vsize: 24, 24
lib: /home/zaafonin/Downloads/Ninecraft/lib/x86/libminecraftpe.so: : 0x56742ce0
Ninecraft is running mcpe v0.5.0
4.6 (Compatibility Profile) Mesa 23.1.1
nine construct 0xd43bccc0
0xffdb46d0
debug: AppPlatform_linux::isPowerVR
debug: AppPlatform_linux::readAssetFile
Segmentation fault (core dumped)

, so something's definitely happening

from ninecraft.

zaafonin avatar zaafonin commented on August 15, 2024

Done a GDB on ninecraft executable:

Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf786a725 in _XSend (dpy=0x5667ec50, data=0x0, size=0)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:569
569             requests = dpy_request - dpy->xcb->last_flushed;     
(gdb) bt -full
#0  0xf786a725 in _XSend (dpy=0x5667ec50, data=0x0, size=0)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:569
        vec = {{iov_base = 0x566a0770, iov_len = 4294967295}, {
            iov_base = 0x0, iov_len = 4156693056}, {iov_base = 0x0, 
            iov_len = 4154972192}}
        requests = <optimized out>
        dpy_request = <optimized out>
        ext = <optimized out>
        c = 0x5669b530
        pad = "\000\000"
        dummy_request = {reqType = 0 '\000', data = 0 '\000', 
          length = 0}
#1  0xf786f902 in _XReply (dpy=0x5667ec50, rep=0xffffd370, extra=0, 
    discard=1)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:679
        error = 0x5667ec50
        c = 0x5669b530
        reply = <optimized out>
        current = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
        dpy_request = <optimized out>
        __PRETTY_FUNCTION__ = "_XReply"
#2  0xf78636b2 in XQueryPointer (dpy=0x5667ec50, w=20971527, 
    root=0xffffd3f4, child=0xffffd3f8, root_x=0xffffd3fc, 
    root_y=0xffffd400, win_x=0xffffd404, win_y=0xffffd408, 
    mask=0xffffd40c)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/QuPntr.c:48
        rep = {type = 145 '\221', sameScreen = 72 'H', 
          sequenceNumber = 22110, length = 3558924384, 
          root = 1449149524, child = 4294955980, rootX = 18244, 
          rootY = 22110, winX = 336, winY = 0, mask = 61716, 
          pad1 = 54301, pad = 3558912324}
        req = <optimized out>
#3  0x565dbab0 in _glfwGetCursorPosX11 (window=0x566afdd0, 
    xpos=0x566affa8, ypos=0x566affb0)
    at /home/zaafonin/Downloads/Ninecraft/glfw/src/x11_window.c:2840
        root = 1449544320
        child = 1
        rootX = -724545232
--Type <RET> for more, q to quit, c to continue without paging--
        rootY = 1848487424
        childX = 1448835805
        childY = 1449385972
        mask = 4294956076
#4  0x565c5676 in glfwSetInputMode (handle=0x566afdd0, mode=208897, 
    value=212994)
    at /home/zaafonin/Downloads/Ninecraft/glfw/src/input.c:613
        window = 0x566afdd0
        __PRETTY_FUNCTION__ = "glfwSetInputMode"
#5  0x565b552b in main (argc=1, argv=0xffffd644)
    at /home/zaafonin/Downloads/Ninecraft/ninecraft/src/main.c:858
which corresponds to
if (version_id >= version_id_0_6_0) {
    default_mouse_mode = GLFW_CURSOR_HIDDEN;
}

glfwSetInputMode(_window, GLFW_CURSOR, default_mouse_mode);

I've disabled the >0.6.0 check so the cursor mode is GLFW_CURSOR_NORMAL instead. That seemingly helps (also that's why 0.5.0 loads a bit further) because switching cursor mode to normal doesn't actually do anything when it's already normal, but the loading process still stops on:

lib: /home/zaafonin/Downloads/Ninecraft/lib/x86/libminecraftpe.so: : 0x56664a80
Ninecraft is running mcpe v0.8.1
4.6 (Compatibility Profile) Mesa 23.1.1
nine construct 0xd42dd3d0
0xffffd4c0
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/images/terrain.meta
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/images/items.meta
debug: AppPlatform_linux::isPowerVR
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/lang/en_US.lang
debug: AppPlatform_linux::supportsTouchscreen
debug: AppPlatform_linux::getPixelsPerMillimeter

Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf786a725 in _XSend (dpy=0x5667ec50, data=0x0, size=0)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:569
569             requests = dpy_request - dpy->xcb->last_flushed;     
(gdb) bt -full
#0  0xf786a725 in _XSend (dpy=0x5667ec50, data=0x0, size=0)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:569
        vec = {{iov_base = 0x566a0770, iov_len = 1457606632}, {
            iov_base = 0x0, iov_len = 1457606656}, {
            iov_base = 0xf7c23760 <main_arena>, 
            iov_len = 4160736128}}
        requests = <optimized out>
        dpy_request = <optimized out>
        ext = <optimized out>
        c = 0x5669b530
        pad = "\000\000"
        dummy_request = {reqType = 0 '\000', data = 0 '\000', 
          length = 0}
#1  0xf786f902 in _XReply (dpy=0x5667ec50, rep=0xffffd0f0, extra=0, 
    discard=1)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:679
        error = 0x19
        c = 0x5669b530
        reply = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
        current = <optimized out>
        dpy_request = <optimized out>
        __PRETTY_FUNCTION__ = "_XReply"
#2  0xf784d2cb in _XGetWindowAttributes (dpy=0x5667ec50, 
    w=20971527, attr=0xffffd174)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/GetWAttrs.c:115
        rep = {type = 49 '1', depth = 0 '\000', sequenceNumber = 0, 
          length = 49, root = 1457158816, x = -11941, y = -2137, 
          width = 1, height = 0, borderWidth = 60496, pad1 = 22119, 
          pad2 = 4153934984, pad3 = 1449651280}
        req = <optimized out>
        i = <optimized out>
        sp = <optimized out>
        async = {next = 0x0, 
          handler = 0xf784f100 <_XWAttrsHandler>, 
          data = 0xffffd0dc "\250"}
        async_state = {attr_seq = 168, geom_seq = 169, 
          attr = 0xffffd174}
#3  0xf784d42d in XGetWindowAttributes (dpy=0x5667ec50, w=20971527, 
--Type <RET> for more, q to quit, c to continue without paging--
    attr=0xffffd174)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/GetWAttrs.c:150
        ret = <optimized out>
#4  0x565da1db in _glfwGetWindowSizeX11 (window=0x566afe40, 
    width=0xffffd238, height=0xffffd23c)
    at /home/zaafonin/Downloads/Ninecraft/glfw/src/x11_window.c:2196
        attribs = {x = -11888, y = -11832, width = -139992193, 
          height = -138266784, border_width = 45056, 
          depth = -138269132, 
          visual = 0xf7a7e37f <_IO_new_do_write+47>, 
          root = 4154972047, class = 1457158816, 
          bit_gravity = -138265280, win_gravity = -139990941, 
          backing_store = -138265280, backing_planes = 1457158816, 
          backing_pixel = 49, save_under = -138269132, 
          colormap = 0, map_installed = 73, map_state = -11820, 
          all_event_masks = -138274240, your_event_mask = 48, 
          do_not_propagate_mask = -138269132, 
          override_redirect = -11764, 
          screen = 0xf7a71dbb <__GI__IO_puts+523>}
--Type <RET> for more, q to quit, c to continue without paging--
#5  0x565cb632 in glfwGetWindowSize (handle=0x566afe40, 
    width=0xffffd238, height=0xffffd23c)
    at /home/zaafonin/Downloads/Ninecraft/glfw/src/window.c:599
        window = 0x566afe40
        __PRETTY_FUNCTION__ = "glfwGetWindowSize"
#6  0x5656f29d in AppPlatform_linux$getPixelsPerMillimeter (
    app_platform=0xffffd4c0)
    at /home/zaafonin/Downloads/Ninecraft/ninecraft/src/AppPlatform_linux.c:762

, so it's not GLFW that is the problem. Everything boils down to

0xf786a725 in _XSend (dpy=0x5667ec50, data=0x0, size=0)
    at /usr/src/debug/lib32-libx11/libX11-1.8.5/src/xcb_io.c:569
569             requests = dpy_request - dpy->xcb->last_flushed;     

Possible libX11 bug? Changing between native X11 and XWayland has no effect. Downgrading X11 a couple minor versions back doesn't help either.

EDIT: Downgrading lib32-libX11 to 1.7.0 pushes the loading process a bit further. Stack is corrupted, so can't provide a meaningful trace.

from ninecraft.

zaafonin avatar zaafonin commented on August 15, 2024

Attempted to swap the custom glfw for AUR's lib32-glfw-wayland. Surprisingly, a window actually does get initialized and loading gets quite far:

lib: /home/zaafonin/Downloads/Ninecraft/lib/x86/libminecraftpe.so: : 0x565f32e0
Ninecraft is running mcpe v0.8.1
4.6 (Compatibility Profile) Mesa 23.1.2
nine construct 0xd3cdd3d0
0xffffd5a0
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/images/terrain.meta
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/images/items.meta
debug: AppPlatform_linux::isPowerVR
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/lang/en_US.lang
debug: AppPlatform_linux::supportsTouchscreen
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::supportsTouchscreen
debug: AppPlatform_linux::getPlatformStringVar
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getLoginInformation
[New Thread 0xd3bdeb40 (LWP 2182)]
[New Thread 0xd31ffb40 (LWP 2183)]
[New Thread 0xd29feb40 (LWP 2184)]
[New Thread 0xd21fdb40 (LWP 2185)]
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/images/font/glyph_sizes.bin
debug: AppPlatform_linux::updateStatsUserData
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getPlatformStringVar
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG
debug: AppPlatform_linux::getImagePath
debug: AppPlatform_linux::loadPNG

Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xf7b6f311 in __glDispatchCheckMultithreaded () at ../libglvnd-v1.6.0/src/GLdispatch/GLdispatch.c:785
785                 if (__glvndPthreadFuncs.equal(firstThreadId, GLVND_THREAD_NULL)) {                                                                                                                                                                                         
(gdb) bt -full
#0  0xf7b6f311 in __glDispatchCheckMultithreaded () at ../libglvnd-v1.6.0/src/GLdispatch/GLdispatch.c:785
        tid = <optimized out>
#1  __glDispatchCheckMultithreaded () at ../libglvnd-v1.6.0/src/GLdispatch/GLdispatch.c:766
        tid = <optimized out>
#2  0xf7aaefd2 in __eglDispatchFetchByDisplay (index=47, dpy=0x5661bc60) at ../libglvnd-v1.6.0/src/EGL/egldispatchstubs.c:66
        vendor = <optimized out>
        vendor = <optimized out>
#3  eglSwapBuffers (dpy=0x5661bc60, surface=0x56794100) at src/generate/g_egldispatchstubs.c:279
        _ret = 0
        _ptr_eglSwapBuffers = <optimized out>
#4  0xf7e6f80f in ?? () from /usr/lib32/libglfw.so.3
No symbol table info available.
#5  0x565b04a8 in main (argc=1, argv=0xffffd724) at /home/zaafonin/Downloads/Ninecraft/ninecraft/src/main.c:1150
        st = {st_dev = 66306, __pad1 = 0, st_ino = 688134, st_mode = 16832, st_nlink = 2, st_uid = 1000, st_gid = 1000, st_rdev = 0, __pad2 = 0, st_size = 4096, st_blksize = 4096, st_blocks = 8, st_atim = {tv_sec = 1686337293, tv_nsec = 556484184}, st_mtim = {
            tv_sec = 1686337292, tv_nsec = 834487800}, st_ctim = {tv_sec = 1686337292, tv_nsec = 834487800}, __glibc_reserved4 = 0, __glibc_reserved5 = 0}
        icon = {width = 512, height = 512, pixels = 0xe63fe010 ""}
        in = {stlp = {buffers = {_M_end_of_storage = 0x5680a43c, _M_static_buf = "<\244\200VP=`VP=`V\370\017\000"}, _M_finish = 0x565bba00 <user_hooks_resize+12>, _M_start_of_storage = 0x565ddd42}, gnu = {data = 0x5680a43c "v%d.%d.%d alpha"}}
        get_game_version_string = 0x0
        get_game_version_string_2 = 0xd3cdedc0
        ninecraft_app_size = 3428
        platform = {vtable = 0x565efc40 <app_platform_vtable_0_8_0>, handle = 0x565f32e0 <sopool>, status = -1, version_id = 33, options = 0x565f2dec <options>}
        minecraft_isgrabbed_offset = 3192
(gdb) 

, line 1150 being just glfwSwapBuffers(_window); — will try to investigate more.

EDIT: Compiled bundled glfw with Wayland support and used glfwInitHint(GLFW_PLATFORM, GLFW_PLATFORM_WAYLAND) in ninecraft's main.c to replicate the same effect, but with proven glfw: same segfault.

from ninecraft.

zaafonin avatar zaafonin commented on August 15, 2024

Commented out buffer swapping completely, and the game loads slightly further. On 0.6.1, sometimes (like 50% of times) the game crashes there:

Vsize: 24, 24
lib: /home/zaafonin/Downloads/Ninecraft/lib/x86/libminecraftpe.so: : 0x56676800
Ninecraft is running mcpe v0.6.1
4.6 (Compatibility Profile) Mesa 23.1.2
nine construct 0xd3e8d050
0xffffd3d0
debug: AppPlatform_linux::isPowerVR
debug: AppPlatform_linux::readAssetFile
Read asset: ./assets/lang/en_US.lang
debug: AppPlatform_linux::isTouchscreen
numBuffers: 26136
debug: AppPlatform_linux::loadTexture
debug: AppPlatform_linux::getOptionsStrings
debug: AppPlatform_linux::isTouchscreen
debug: AppPlatform_linux::getPlatformStringVar
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::loadTexture
debug: AppPlatform_linux::getPlatformStringVar
debug: AppPlatform_linux::getPixelsPerMillimeter
debug: AppPlatform_linux::getPixelsPerMillimeter
                                                                                                                                                                                                                                                          
Thread 1 "ninecraft" received signal SIGSEGV, Segmentation fault.
0xe128c252 in stpcpy (__src=<optimized out>, __dest=<optimized out>, __dest=<optimized out>, __src=<optimized out>) at /usr/include/bits/string_fortified.h:86
86        return __builtin___stpcpy_chk (__dest, __src, __glibc_objsize (__dest));
(gdb) bt -full
#0  0xe128c252 in stpcpy (__src=<optimized out>, __dest=<optimized out>, __dest=<optimized out>, __src=<optimized out>) at /usr/include/bits/string_fortified.h:86
No locals.
#1  sd_machine_get_class (machine=0xffffcdf0 "borobox", class=0xffffcb68) at ../systemd-stable/src/libsystemd/sd-login/sd-login.c:1076
        _appendees_ = <optimized out>
        _len_ = <optimized out>
        _i_ = 1
        _d_ = 0xffffca90 "/run/systemd/machines/\377\377\370\214,\341h\313\377\377\320\301", <incomplete sequence \341>
        _p_ = 0xffffcaa6 "\377\377\370\214,\341h\313\377\377\320\301", <incomplete sequence \341>
        c = <optimized out>
        p = <optimized out>
        r = <optimized out>
        __func__ = "sd_machine_get_class"
        _pvar_ = <optimized out>
        _var_ = <optimized out>
        _nullvalue_ = <optimized out>
#2  0xe1281a67 in _nss_mymachines_gethostbyname3_r (name=0xffffcdf0 "borobox", af=<optimized out>, result=0xf7c279c0 <resbuf>, buffer=0x56b82b00 "", buflen=1024, errnop=0xf7c36c14, h_errnop=0xffffcdac, ttlp=0x0, canonp=0x0)
    at ../systemd-stable/src/nss-mymachines/nss-mymachines.c:274
--Type <RET> for more, q to quit, c to continue without paging--
        reply = 0x0
        bus = 0x0
        class = 0x0
        c = 0
        i = 0
        r_name = <optimized out>
        r_aliases = <optimized out>
        r_addr = <optimized out>
        r_addr_list = <optimized out>
        l = <optimized out>
        idx = <optimized out>
        ms = <optimized out>
        alen = <optimized out>
        r = <optimized out>
        _saved_errno_ = 2
        _saved_sigset = {__val = {0 <repeats 32 times>}}
        __func__ = "_nss_mymachines_gethostbyname3_r"
--Type <RET> for more, q to quit, c to continue without paging--
#3  0xe1282251 in _nss_mymachines_gethostbyname_r (name=0xffffcdf0 "borobox", host=0xf7c279c0 <resbuf>, buffer=0x56b82b00 "", buflen=1024, errnop=0xf7c36c14, h_errnop=0xffffcdac) at ../systemd-stable/src/nss-mymachines/nss-mymachines.c:404
        ret = <optimized out>
#4  0xf7b383cd in __gethostbyname_r (name=<optimized out>, resbuf=<optimized out>, buffer=<optimized out>, buflen=<optimized out>, result=<optimized out>, h_errnop=<optimized out>) at ../nss/getXXbyYY_r.c:273
        nip = 0x56754c68
        do_merge = 0
        mergegrp = <optimized out>
        mergebuf = 0x0
        endptr = 0x0
        fct = {l = 0xe12821e0 <_nss_mymachines_gethostbyname_r>, ptr = 0xe12821e0 <_nss_mymachines_gethostbyname_r>}
        no_more = 0
        err = <optimized out>
        status = NSS_STATUS_UNAVAIL
        nscd_status = <optimized out>
        any_service = true
        res_ctx = <optimized out>
        res = <optimized out>
#5  0xf7b378f7 in gethostbyname (name=0xffffcdf0 "borobox") at ../nss/getXXbyYY.c:139
--Type <RET> for more, q to quit, c to continue without paging--
        buffer_size = 1024
        resbuf = {h_name = 0x0, h_aliases = 0x0, h_addrtype = 0, h_length = 0, h_addr_list = 0x0}
        result = 0x0
        h_errno_tmp = 0
        res_ctx = 0x56b820a0
#6  0xd404d946 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
No such behavior on 0.8.1. Now I certainly would be happy if the game worked with rendering enabled...

EDIT: This happened because lib32-systemd was installed which leads to to the gethostbyname segfault. This was only the case on 0.6.1 because this function is called almost immediately on start. On 0.8.1 it does happen, just later.

from ninecraft.

MFDGaming avatar MFDGaming commented on August 15, 2024

You most likely don't have a 32bit video driver

from ninecraft.

zaafonin avatar zaafonin commented on August 15, 2024

Not the case. 32-bit Wine stuff wouldn't work either then.

from ninecraft.

kran27 avatar kran27 commented on August 15, 2024

any chance you could provide your build? I tried getting it to compile following these instructions on my steam deck but ran into additional issues with linux headers and other stuff that I couldn't figure out.

from ninecraft.

Related Issues (15)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.