jmonkeyengine icon indicating copy to clipboard operation
jmonkeyengine copied to clipboard

bulletjme: Add Bitness/Architecture Suffix

Open MeFisto94 opened this issue 4 years ago • 1 comments

For all other native libs we have like OpenAL64.dll and lwjgl32.dll, not so for bulletjme. When switching jvms between 32bit and 64bit, you get an UnsatisfiedLinkError due to the DLL requiring a manual deletion.

MeFisto94 avatar Nov 14 '20 15:11 MeFisto94

  1. Changing the filenames of Bullet native libraries will break Minie, which relies on the current naming scheme

  2. Even with this change, file deletion will still be required when switching between different versions of jme3-bullet-native, or when switching between jme3-bullet-native and Minie

stephengold avatar Nov 22 '20 15:11 stephengold

I am closing this because Bullet native has moved out from the main JME repo and is not maintained anymore but this might be still something to consider for the Minie project.

Ali-RS avatar Feb 10 '23 07:02 Ali-RS

Apparently, Minie depends on bulletjme natives that are loaded via NativeLibraryLoader on JME side.

https://github.com/jMonkeyEngine/jmonkeyengine/blob/5e859d59a3193608aa2f55e582515cd3ae8192b7/jme3-desktop/src/main/java/com/jme3/system/NativeLibraryLoader.java#L143-L153

There was some discussion going on https://github.com/jMonkeyEngine/jmonkeyengine/issues/1965#issuecomment-1444140527

Ali-RS avatar Feb 25 '23 06:02 Ali-RS

Fixed in #1973

Added Architecture Suffix to all bulletjme natives when extracting. Note: This is not a breaking change, no changes are required on the Minie project.

https://github.com/jMonkeyEngine/jmonkeyengine/blob/308cdf12fb1042d07866ab726b4835c492bd8d59/jme3-desktop/src/main/java/com/jme3/system/NativeLibraries.java#L74-L86

Ali-RS avatar Feb 27 '23 10:02 Ali-RS