Closed breandan closed 3 years ago
version `GLIBC_2.29' not found
Which version of glibc do you have installed?
Ah, I suppose that's the problem. It looks like Ubuntu 18.04
ships with glibc 2.27
. Running ldd --version
returns:
ldd (Ubuntu GLIBC 2.27-3ubuntu1.4) 2.27
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
yes, that's definitely the problem. For now, install version 2.29 or greater, if you can. I'm not sure if 2.29 is too new or not to be a reasonable version.
If 2.27
is the latest version that is shipped, then this library should probably support that. Not yet sure what arguments to make this work.
Does Kotlin/Native have the same issue for you or is it just JVM?
Native should have the same issue, since the library is built with Ubuntu 20.04. Although I'm also surprised because the error originates inside the system's libm
, so maybe this is not a kotlin-imgui
problem, but a partial update problem?
reference:
/tmp/libcimgui7590039100609315263.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found
Have not tried Kotlin native yet, although I suspect it's probably an issue for Dear ImGui? FWIW, I tried @SpaiR / imgui-java and encountered the same issue. Hesitant to install a later version of glibc because so many packages depend on 2.27
and I've read that updating manually can cause bad things to happen.
yeah, like Dominic said, if 2.27 is the latest version that's supported on an active LTS release, then this library should support that. We can try to build again with the oldest active LTS release, but we need to find a workaround for SWIG because we need version ≥ 4.0, and that's only shipped since 20.04.
Ah rip, forgot about SWIG. That suddenly makes this quite difficult. I was considering statically linking https://github.com/Dominaezzz/kotlin-imgui/blob/798ab09ff4d61e545d7fb3d0f4ba0f55daa17eb4/cimgui/build.gradle.kts#L314 but since libm is doing the asking instead of cimgui then I don't think that'll work.
It's rather unfortunate but it might be easiest for you to upgrade to Ubuntu 20.04 .
we can probably install the right SWIG version manually on an 18.04 target, but that'll take some time to test for sure.
@Dominaezzz do we know why SWIG 3 doesn't work?
I don't remember anymore. Swig 3 and swig 4 generated code are not compatible and it may have just been that I had swig 4 on my computer and stuck to it. Maybe some directives didn't work. Might be worth trying in a branch and seeing what happens. I prefer if we used swig 4 on old Ubuntu, but that probably means building it from source.
I just checked the download on the SWIG website, and it does indeed download an archive with the source code, so installing SWIG 4 on Ubuntu 18.04 the intended way will require us to build from source... Maybe there's some other package manager we can use to get a binary? Maybe a PPA?
I made a test branch where I build swig 4 from source with the ubuntu-latest (18.04) runner, and the build tests pass. Is that enough for proof of concept or do we need to test further?
Oh awesome!! (Sorry, forgot to reply yesterday). I think that should be enough tbh. All that's left is for @breandan to check that it works.
We can tag it 0.1.8
, I'm confident enough. Luckily BinTray will still let us publish for now.
Luckily BinTray will still let us publish for now.
That sounds ominous 😅
Tried building from 9071880 but I probably did something wrong. Here is my build output:
I think I'll wait for 0.1.8 to be published. Thank you for all the help!
@breandan 0.1.8 should be live if you can give it a try
0.1.8
should be available now, so you can give it a go. :crossed_fingers:
Just tried running the following snippet on 0.1.8
but it crashed.
import com.imgui.ImGui
fun main() {
with(ImGui) {
text("Hello, world ${123}")
if (button("Save")) {
println("Save")
}
}
}
Here is the core dump in case it helps:
ImGui needs OpenGL and GLFW to be initialized to work properly, so that example wouldn't work on any machine.
Ah my bad, should I try installing those dependencies or is there another example you would like me to try?
There's a samples folder in the repository. Maybe you can try that?
When I run ../gradlew run
from the samples directory, I receive the error posted above. Maybe there is a standalone project I can try? Happy to do some fiddling with the build script, I'm just not very familiar with the workflow for graphics programming so not sure where to start. Sorry for the trouble!
Running the following, I have no errors on a fresh, fully updated Ubuntu 18.04 VM:
please let me know if that test project works for you.
I can confirm the imgui-test
project works, thank you again for all the help @nlbuescher @Dominaezzz!
I encountered the following error when trying kotlin-imgui
0.1.7
on Ubuntu18.04
with JDK11.0.9
.Here is my
build.gradle.kts
excerpt: