Rock
Rock copied to clipboard
Running Rock Binary
The pre-packaged binary requires GLIBC_2.34 which is a very system dependent file. It might be better to use the users version of GLIBC as this is a fundamental library that works alongside the Linux kernel and is not recommended to be upgraded manually. Here's the output from the console:
rock: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by rock)
rock: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by rock)
rock: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by rock)
I know this is a very in-development language but thought you might want to be aware.
This is amazing to finally have someone that try Rock on another config than mine (you're the first actually), I can't thank you enough for that.
That being said: I don't know how to deal with this issue for now, I you have any directions or ideas I take everything :)
Well I'm happy to help, I like the style this language is going for, a sort of unique blend of rust and Haskell. As for fixing the issue, my best guess is to figure out what is loading GLIBC in Rock. I'm assuming that this version of GLIBC is what your installation of Arch uses, and I'm assuming you built the binary using your computer/environment. In order to fix it, it might be best to configure the build to build against a more mainstream and more widely supported version of the GLIBC, that way, any version the user might have that above that base version should work as well. Based on the small bit of Rocks standard it seems it might your use of the c_malloc function you got in Rock, which I'm guessing is a wrapper over C's malloc, this is what I'm assuming is the biggest use of GLIBC from Rock, along with other functions that manage memory and maybe input and output. Based on the fact that the cargo based installs don't have this issue I think it is primarily based on the fact your system has a much higher version of GLIBC and thus when being built can't link against anything older.
I guess it might be the time to introduce Docker into this project. It might be possible to create a release pipeline that compiles and release for some compatible mainstream platform
Docker would be good to automate the build so you can get the various packages. It also might help test across different systems.