IMBlocker icon indicating copy to clipboard operation
IMBlocker copied to clipboard

Linux下mc1.16.5,forge36.1.23提示Unable to load library ‘imm32’

Open heipiao233 opened this issue 3 years ago • 10 comments

---- Minecraft Crash Report ---- // Everything's going to plan. No, really, that was supposed to happen.

Time: 21-5-22 上午10:11 Description: Unexpected error

java.lang.UnsatisfiedLinkError: Unable to load library 'imm32': Native library (linux-x86-64/libimm32.so) not found in resource path (/home//.minecraft/libraries/net/minecraftforge/forge/1.16.5-36.1.23/forge-1.16.5-36.1.23.jar:/home//.minecraft/libraries/org/ow2/asm/asm/9.0/asm-9.0.jar:/home//.minecraft/libraries/org/ow2/asm/asm-commons/9.0/asm-commons-9.0.jar:/home//.minecraft/libraries/org/ow2/asm/asm-tree/9.0/asm-tree-9.0.jar:/home//.minecraft/libraries/org/ow2/asm/asm-util/9.0/asm-util-9.0.jar:/home//.minecraft/libraries/org/ow2/asm/asm-analysis/9.0/asm-analysis-9.0.jar:/home//.minecraft/libraries/cpw/mods/modlauncher/8.0.9/modlauncher-8.0.9.jar:/home//.minecraft/libraries/cpw/mods/grossjava9hacks/1.3.3/grossjava9hacks-1.3.3.jar:/home//.minecraft/libraries/net/minecraftforge/accesstransformers/3.0.1/accesstransformers-3.0.1.jar:/home//.minecraft/libraries/org/antlr/antlr4-runtime/4.9.1/antlr4-runtime-4.9.1.jar:/home//.minecraft/libraries/net/minecraftforge/eventbus/4.0.0/eventbus-4.0.0.jar:/home//.minecraft/libraries/net/minecraftforge/forgespi/3.2.0/forgespi-3.2.0.jar:/home//.minecraft/libraries/net/minecraftforge/coremods/4.0.6/coremods-4.0.6.jar:/home//.minecraft/libraries/net/minecraftforge/unsafe/0.2.0/unsafe-0.2.0.jar:/home//.minecraft/libraries/com/electronwill/night-config/core/3.6.3/core-3.6.3.jar:/home//.minecraft/libraries/com/electronwill/night-config/toml/3.6.3/toml-3.6.3.jar:/home//.minecraft/libraries/org/jline/jline/3.12.1/jline-3.12.1.jar:/home//.minecraft/libraries/org/apache/maven/maven-artifact/3.6.3/maven-artifact-3.6.3.jar:/home//.minecraft/libraries/net/jodah/typetools/0.8.3/typetools-0.8.3.jar:/home//.minecraft/libraries/org/apache/logging/log4j/log4j-api/2.11.2/log4j-api-2.11.2.jar:/home//.minecraft/libraries/org/apache/logging/log4j/log4j-core/2.11.2/log4j-core-2.11.2.jar:/home//.minecraft/libraries/net/minecrell/terminalconsoleappender/1.2.0/terminalconsoleappender-1.2.0.jar:/home//.minecraft/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar:/home//.minecraft/libraries/org/spongepowered/mixin/0.8.2/mixin-0.8.2.jar:/home//.minecraft/libraries/net/minecraftforge/nashorn-core-compat/15.1.1.1/nashorn-core-compat-15.1.1.1.jar:/home//.minecraft/libraries/com/mojang/patchy/1.1/patchy-1.1.jar:/home//.minecraft/libraries/oshi-project/oshi-core/1.1/oshi-core-1.1.jar:/home//.minecraft/libraries/net/java/dev/jna/jna/4.4.0/jna-4.4.0.jar:/home//.minecraft/libraries/net/java/dev/jna/platform/3.4.0/platform-3.4.0.jar:/home//.minecraft/libraries/com/ibm/icu/icu4j/66.1/icu4j-66.1.jar:/home//.minecraft/libraries/com/mojang/javabridge/1.0.22/javabridge-1.0.22.jar:/home//.minecraft/libraries/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:/home//.minecraft/libraries/com/google/guava/guava/21.0/guava-21.0.jar:/home//.minecraft/libraries/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar:/home//.minecraft/libraries/commons-io/commons-io/2.5/commons-io-2.5.jar:/home//.minecraft/libraries/commons-codec/commons-codec/1.10/commons-codec-1.10.jar:/home//.minecraft/libraries/net/java/jinput/jinput/2.0.5/jinput-2.0.5.jar:/home//.minecraft/libraries/net/java/jutils/jutils/1.0.0/jutils-1.0.0.jar:/home//.minecraft/libraries/com/mojang/brigadier/1.0.17/brigadier-1.0.17.jar:/home//.minecraft/libraries/com/mojang/datafixerupper/4.0.26/datafixerupper-4.0.26.jar:/home//.minecraft/libraries/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar:/home//.minecraft/libraries/com/mojang/authlib/2.1.28/authlib-2.1.28.jar:/home//.minecraft/libraries/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar:/home//.minecraft/libraries/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar:/home//.minecraft/libraries/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:/home//.minecraft/libraries/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar:/home//.minecraft/libraries/it/unimi/dsi/fastutil/8.2.1/fastutil-8.2.1.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar:/home//.minecraft/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar:/home//.minecraft/libraries/com/mojang/text2speech/1.11.3/text2speech-1.11.3.jar:/home//.minecraft/libraries/org/jackhuang/hmcl/transformer-discovery-service/1.0/transformer-discovery-service-1.0.jar:/home/***/.minecraft/versions/1.16.5/1.16.5.jar) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:303) ~[jna-4.4.0.jar:4.4.0 (b0)] {} at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:427) ~[jna-4.4.0.jar:4.4.0 (b0)] {} at com.sun.jna.Native.register(Native.java:1642) ~[jna-4.4.0.jar:4.4.0 (b0)] {re:classloading} at com.sun.jna.Native.register(Native.java:1360) ~[jna-4.4.0.jar:4.4.0 (b0)] {re:classloading} at io.github.reserveword.imblocker.IMManager.(IMManager.java:21) ~[imblocker:2.0] {re:classloading} at io.github.reserveword.imblocker.ActiveTextFieldSniffer.checkState(ActiveTextFieldSniffer.java:109) ~[imblocker:2.0] {re:classloading} at io.github.reserveword.imblocker.IMBlocker$RegistryEvents.onClientTick(IMBlocker.java:78) ~[imblocker:2.0] {re:classloading} at net.minecraftforge.eventbus.ASMEventHandler_17_RegistryEvents_onClientTick_ClientTickEvent.invoke(.dynamic) ~[?:?] {} at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:85) ~[eventbus-4.0.0.jar:?] {} at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?] {} at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?] {} at net.minecraftforge.fml.hooks.BasicEventHooks.onPostClientTick(BasicEventHooks.java:110) ~[forge:?] {re:classloading} at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1542) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:953) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:184) ~[1.16.5.jar:?] {re:classloading,pl:runtimedistcleaner:A} at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181] {} at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181] {} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181] {} at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181] {} at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) ~[forge-1.16.5-36.1.23.jar:36.1] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {}

A detailed walkthrough of the error, its code path and all known details is as follows:

-- System Details -- Details: Minecraft Version: 1.16.5 Minecraft Version ID: 1.16.5 Operating System: Linux (amd64) version 4.15.0-30deepin-generic Java Version: 1.8.0_181, Oracle Corporation Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 4759438208 bytes (4538 MB) / 5234491392 bytes (4992 MB) up to 5234491392 bytes (4992 MB) CPUs: 4 JVM Flags: 10 total; -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=16M -XX:-UseAdaptiveSizePolicy -XX:-OmitStackTraceInFastThrow -Xmn128m -Xmx4992m ModLauncher: 8.0.9+86+master.3cf110c ModLauncher launch target: fmlclient ModLauncher naming: srg ModLauncher services: /mixin-0.8.2.jar mixin PLUGINSERVICE /eventbus-4.0.0.jar eventbus PLUGINSERVICE /forge-1.16.5-36.1.23.jar object_holder_definalize PLUGINSERVICE /forge-1.16.5-36.1.23.jar runtime_enum_extender PLUGINSERVICE /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE /forge-1.16.5-36.1.23.jar capability_inject_definalize PLUGINSERVICE /forge-1.16.5-36.1.23.jar runtimedistcleaner PLUGINSERVICE /mixin-0.8.2.jar mixin TRANSFORMATIONSERVICE /OptiFine-1.16.5_HD_U_G8.jar OptiFine TRANSFORMATIONSERVICE /forge-1.16.5-36.1.23.jar fml TRANSFORMATIONSERVICE FML: 36.1 Forge: net.minecraftforge:36.1.23 FML Language Providers: [email protected] minecraft@1 Mod List: forge-1.16.5-36.1.23-client.jar |Minecraft |minecraft |1.16.5 |DONE |NOSIGNATURE forge-1.16.5-36.1.23-universal.jar |Forge |forge |36.1.23 |DONE |22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90 Jade-1.16.4-2.5.1.jar |Jade |jade |2.5.1 |DONE |NOSIGNATURE AppleSkin-mc1.16.2-forge-1.0.14.jar |AppleSkin |appleskin |1.0.14 |DONE |NOSIGNATURE imblocker-1.16.5-2.0.jar |IMBlocker |imblocker |2.0 |DONE |NOSIGNATURE ferritecore-2.0.4-forge.jar |Ferrite Core |ferritecore |2.0.4 |DONE |41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a journeymap-1.16.5-5.7.1b3.jar |Journeymap |journeymap |5.7.1b3 |DONE |NOSIGNATURE jei-1.16.4-7.6.1.65.jar |Just Enough Items |jei |7.6.1.65 |DONE |NOSIGNATURE Crash Report UUID: 14a670b6-0768-49a9-802d-8ca9f25595ff Launched Version: HMCL 3.3.183 Backend library: LWJGL version 3.2.2 build 10 Backend API: Mesa DRI Intel(R) HD Graphics 620 (Kaby Lake GT2) GL version 3.0 Mesa 18.1.9, Intel Open Source Technology Center GL Caps: Using framebuffer using OpenGL 3.0 Using VBOs: Yes Is Modded: Definitely; Client brand changed to 'forge' Type: Client (map_client.txt) Graphics mode: fancy Resource Packs: vanilla, mod_resources, file/Entity+Healthbars.zip Current Language: 简体中文 (中国) CPU: 4x Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz OptiFine Version: OptiFine_1.16.5_HD_U_G8 OptiFine Build: 20210515-161946 Render Distance Chunks: 12 Mipmaps: 4 Anisotropic Filtering: 1 Antialiasing: 0 Multitexture: false Shaders: Sildurs Vibrant Shaders v1.283 Lite.zip OpenGlVersion: 3.0 Mesa 18.1.9 OpenGlRenderer: Mesa DRI Intel(R) HD Graphics 620 (Kaby Lake GT2) OpenGlVendor: Intel Open Source Technology Center CpuCount: 4

heipiao233 avatar May 22 '21 02:05 heipiao233

linux目前不受支持,因为我还不知道linux下切换输入法的函数是啥。。 我先找找看,如果你们谁知道对应的函数赶紧告诉我()

reserveword avatar May 22 '21 04:05 reserveword

  • 看了一下,发现linux这边切换输入法的功能好像有点难度

  • linux没有统一的图形界面,x11是主流做法,但是x11似乎把输入法管理交给具体的应用程序来实现

  • Minecraft用的是lwjgl和glfw来管理输入,然后glfw把输入法的处理部分完全隐藏起来了 https://github.com/glfw/glfw/blob/33cd8b865d9289cfbcf3d95e6e68e4050b94fcd3/src/x11_window.c#L1289

  • 上面代码里window->x11.ic就是控制输入法的东西,可以看到这个函数在按键事件发生时把按键事件传递给输入法

  • 然而这个window是glfw库里的东西,从外边调用很麻烦

  • AWT有一个Window类,里面可以开启/关闭输入法,但是我运行的时候发现获取不到窗口

  • 总之现在大概是实现不了了,看看以后会不会有新方法吧。。。

reserveword avatar May 22 '21 09:05 reserveword

其实是有办法的,参考 https://github.com/mrjesen/ImBlockerFabric

plusls avatar Aug 19 '21 07:08 plusls

其实是有办法的,参考 https://github.com/mrjesen/ImBlockerFabric

确实,通过植入native代码的方式可以实现更多的功能,等我有时间了试着写一下吧()

reserveword avatar Aug 19 '21 12:08 reserveword

pojavlauncher也同样出现了调用imm32库失败的问题,不知道是否需要修复。 PojavLauncher.apk also has a failure to call the “imm32” library, and I don't know if it needs to be fixed to make it work.

routhing avatar Nov 06 '23 13:11 routhing

同样的问题,只是在macos上。显示缺失imm32lib。 minecraft-exported-crash-info-2024-06-17T09-30-29.zip

AshdoII avatar Jun 17 '24 01:06 AshdoII

同样的问题,只是在macos上。显示缺失imm32lib。 minecraft-exported-crash-info-2024-06-17T09-30-29.zip

删除imblocker可解决问题。

AshdoII avatar Jun 17 '24 01:06 AshdoII

同样问题,MacOS 提示找不到 imm32

Xiaoyi311 avatar Jun 21 '24 07:06 Xiaoyi311

作者考虑一下支持Mac平台吗,mac平台下可以调用系统的辅助功能接口来实现切换输入法

WhereAreBugs avatar Jul 20 '24 14:07 WhereAreBugs

作者考虑一下支持Mac平台吗,mac平台下可以调用系统的辅助功能接口来实现切换输入法

macos现在应该已经支持了

reserveword avatar Jul 21 '24 04:07 reserveword