Linux System Requirements No Longer Valid for 16r2

Hi Folks,

I just updated my Linux builds to use Xojo 16r2 and have just discovered that Desktop apps now require GLIBC 2.14+. Unfortunately, a lot of the server platforms (CentOS, RHEL, and others) still only include up to GLIBC 1.12.

Please check with your Linux users before you make the shift to 16r2 for your projects. You can find out what version of GLIBC they have with:

ls -l /lib/libc-*

<https://xojo.com/issue/44765>

Is this a 64-bit build? We’ve documented for a while now (since before 2016r2) that 64-bit builds require glibc-2.14 (which would be CentOS 7) on our system requirements.

Obviously something different as a quick little desktop app with a pile of std controls on the main window (htmlviewers, movie players, bevelbuttons pushbuttons etc) on my Centos 6.6 32 bit desktop gives me

ls -l
total 1320
drwxrwxr-x. 3 npalardy npalardy 4096 Jul 28 19:16 .
drwxrwxr-x. 3 npalardy npalardy 4096 Jul 28 19:11 …
-rwxrwxr-x. 1 npalardy npalardy 1336203 Jul 28 19:16 MyApplication
drwxrwxr-x. 2 npalardy npalardy 4096 Jul 28 19:16 MyApplication Libs

ldd MyApplication
linux-gate.so.1 => (0x00b2e000)
librt.so.1 => /lib/librt.so.1 (0x005c8000)
libdl.so.2 => /lib/libdl.so.2 (0x005c1000)
libpthread.so.0 => /lib/libpthread.so.0 (0x005a4000)
libc.so.6 => /lib/libc.so.6 (0x0040c000)
/lib/ld-linux.so.2 (0x003e6000)

ls -l /lib/libc-*
-rwxr-xr-x. 1 root root 1906308 Oct 14 2014 /lib/libc-2.12.so

Yes, 64bit. The issue is that CentOS 6.2 and RHEL 5 are still very pervasive.

Is there a technical reason for not compiling for the predominate GLIBC, or just that you don’t have it to build against?

This GLIBC requirement has been the case since we’ve had 64-bit support, it isn’t anything new for 2016r2- just so no one is confused. It has been documented here:

http://developer.xojo.com/system-requirements$Linux%20Information

Yes, there is a reason we needed to do that. The recent LLVM and its support libraries we use for 64-bit need a slightly newer GLIBC- we took it back as far as it could go to support the most distros we could, and left 32-bit as it was. The CentOS 6.x supported GLIBC is just very old.