Forum > Pas2JS

GLIBC_2.34 and pas2js

(1/1)

benohb:

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---/pas2js: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./pas2js)Without mentioning what you know
I  running pas2js  (bin) on Ubuntu 20.04

There are many stable versions of Linux that are still supported for years
that have not reached this version of glibc library
I thought that building the executable on free Pascal would be based on the oldest possible library !!

TRon:

--- Quote from: benohb on October 05, 2024, 10:44:03 pm ---I thought that building the executable on free Pascal would be based on the oldest possible library !!

--- End quote ---
It depends on the system where the executable was build. You can blame linux devs for that. Nuf said about that topic in these forums already (you can search for that).

Fred vS:

--- Quote from: benohb on October 05, 2024, 10:44:03 pm ---I thought that building the executable on free Pascal would be based on the oldest possible library !!

--- End quote ---
Free Pascal prefers to let the linker choose the signed symbol table to assign to each glibc method. So it depends on the system that linked the program. And hopefully this table is compatible with the original glib2.5.5 table used by fpc.
In your case the table glibc.2.34 was not yet part of your libc.so.6.
If fpc assigned each glibc methods with the table it has been using since the beginning (glibc.2.5.5.) this would not be a problem.
So far fpc has been lucky, the glibc.2.34 table assigned by the linker is still compatible with table glibc.2.5.5.
But what's next?

benohb:
It's getting annoying... even script-based programs like Python are having problems.
Thank you all

Fred vS:
Yes, it is indeed very sad, few devs know how to deal with glibc signed tables.

If you want to use a pas2js binary from fpc 3.2.2 (or 3.2.4) compiled with glibc2.2.5 table, you may use the one in /tools/ from there (after unzipped it of course).

 

Navigation

[0] Message Index

Go to full version