Recently the Linux-glibc team has release a new version of libc.so.6. And some distros have integrated it.
But when you compile your application, at linking, the new table of signed symbols of that new libc.so.6 will be assigned. It has as result that the application will run only on systems with that minimum libc.so.6 version and not on distros with previous version of libc.so.6. The most "Catholic" option to fix this is to install a VM old distro with all needed for fpc and compile your application on that old distro and share that binary. Not very "out-of-the-box". Fortunately, Robert Rosee found a solution that dont need to tweak fpc-complier source and not install a VM. https://forum.lazarus.freepascal.org/index.php/topic,58888.msg483626.html#msg483626 With msegui it is even better if we change some things in msegui source. With those changes, a msegui application compiled on any system with libc.so older or newer will make your binary works: * on Linux 32 from 1994-05-16 till libc.so die. * on Linux 64 from 2002-01-20 till libc.so die. (For X11 library, first version X11R6 (still used) date from 1994-05-16 till forever (X11 will always survive), so no problems there) To enable this, you will need to only add this parameter for compilation "-dglibc225". The fake libdl.so will be created by a patch using "Command before compiling" and removed using "Command after compiling" in project option. I did test it and it works on old distro more than 20 years ago! What do you think, do you agree if I commit the change? (note that if you dont use "-dglibc225" nor the fake libdl.so, it will remain like it is now). Fre;D
_______________________________________________ mseide-msegui-talk mailing list mseide-msegui-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk