Greetings, libral mailing list,
I’ve been very pleased to see that libral is heading down the path of building a lightweight, extensible RAL implementation that is also light on library dependencies (though with Boost in there, it could probably be lighter). The static libral/ralsh binaries available on the site are an excellent demonstration of this. Can you imagine a future with a single RAL binary that works across all (many) Linux platforms? That might be hard, but it’s a goal worth working towards.
In light of this, I was wondering about which Linux platforms today’s libral binaries work on. Today’s binaries are built on CentOS 6 and glibc 2.12, and while libral is still very much a work in progress, I thought it would be interesting to find out. The README says the binaries will work on any Linux platform with glibc 2.12 or later, but I’ve lost my glibc to Linux distro decoder ring, so I ran a quick experiment using all of the Linux platforms that I have easy access to.
Here’s what worked:
These did not work (based on glibc 2.3-2.9):
That’s a lot of platforms that libral works on right out of the box! And certainly there are many other platforms/variants/versions that would work but I haven’t tested.
Thanks for letting me share this quick survey. David and fellow libral contributors, great work! I’d like to join in too. And I’m hoping to see the libral project, as it grows and evolves, remain true to its “lightweight” goals.
Andy
I’ve been very pleased to see that libral is heading down the path of building a lightweight, extensible RAL implementation that is also light on library dependencies (though with Boost in there, it could probably be lighter).
Here’s what worked:
- RHEL 6, 7 (and related distros: CentOS, OracleLinux, ScientificLinux)
- Debian 6, 7, 8, 9
- SLES 11, 12
- Ubuntu 10.04, 12.04, 14.04, 15.04, 15.10, 16.04, 16.10
- Fedora 21, 22, 23, 24, 25
These did not work (based on glibc 2.3-2.9):
- RHEL 4, 5 (and CentOS 4, 5, etc.)
- SLES 10
- OpenSUSE 11
That’s a lot of platforms that libral works on right out of the box! And certainly there are many other platforms/variants/versions that would work but I haven’t tested.
- The README says the binaries may work with glibc 2.8 or 2.9, and I had mixed results. SLES 11 (glibc 2.11) worked fine, but OpenSUSE 11 (glibc 2.9) did not work.
- The binaries also worked on at least one Amazon Linux variant (a 2014.03 snapshot) but I imagine they would work on any release based on CentOS 6 and later.
- The binaries are currently built on 64-bit, and they do not work on any 32-bit platform. If they were built on 32-bit, would they work for both 32 and 64-bit? Maybe not. I should find out.
- Also, there may not be many interested in support for RHEL/CentOS 5, but with some build wrangling, that might also be possible.
Thanks for letting me share this quick survey. David and fellow libral contributors, great work! I’d like to join in too. And I’m hoping to see the libral project, as it grows and evolves, remain true to its “lightweight” goals.
--
You received this message because you are subscribed to the Google Groups "libral" group.
To unsubscribe from this group and stop receiving emails from it, send an email to libral+unsubscribe@googlegroups.com.
To post to this group, send email to lib...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/libral/CAHN%2BA%2BXRmJ7_RrMvngK8u%2BSf%3DOcr67T6THVoiWdMe0uzZpvLcA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
Also, it should be easy to do a quick first pass on each of these build ideas (32-bit, EL5, musl, OSX, extending Travis) and report back to the list.
--
You received this message because you are subscribed to the Google Groups "libral" group.
To unsubscribe from this group and stop receiving emails from it, send an email to libral+unsubscribe@googlegroups.com.
To post to this group, send email to lib...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/libral/CAHN%2BA%2BWNSP3X-SXYQcJS41BCnGLZsE6Awc%2B1CqU%2B7SSAbrCn_g%40mail.gmail.com.
I've posted two PRs to the libral project* https://github.com/puppetlabs/libral/pull/5: This fixes the build for OS X. However, the resulting ralsh executable does not appear to work fully. More work ahead.* https://github.com/puppetlabs/libral/pull/6: A Docker container based build environment for libral and leatherman. This has been useful to me (using an OS X development system). It's not clear to me if this would be useful to others, though, or if it belongs in the libral repo. The branch is there, however, if anyone wants to try it out.David, by the time you sent the last email, I had already tried out two of the low-priority items (only took a few minutes):* A static build on CentOS 5 works great. If this is interesting, I can build you a new static image or send you a quick script to rebuild on the internal VMpooler systems. (CentOS 4 VMs are also available there, and we have pl-tools for CentOS 4. However, CentOS 4 is no longer a Puppet supported platform, so there is no puppet-agent package available--and I met some resistance doing a static Augeas build. Oh well.)* Libral builds and runs fine on 32-bit, but as I feared, that same binary will not run on 64-bit systems, aborting with an ELF format error. If I recall, I've done this successfully on Windows (build on 32-bit, run on 64-bit) so, well, that's one small thing they've done better.
I've posted two PRs to the libral project* https://github.com/puppetlabs/libral/pull/5: This fixes the build for OS X. However, the resulting ralsh executable does not appear to work fully. More work ahead.* https://github.com/puppetlabs/libral/pull/6: A Docker container based build environment for libral and leatherman. This has been useful to me (using an OS X development system). It's not clear to me if this would be useful to others, though, or if it belongs in the libral repo. The branch is there, however, if anyone wants to try it out.
David, by the time you sent the last email, I had already tried out two of the low-priority items (only took a few minutes):* A static build on CentOS 5 works great. If this is interesting, I can build you a new static image or send you a quick script to rebuild on the internal VMpooler systems. (CentOS 4 VMs are also available there, and we have pl-tools for CentOS 4. However, CentOS 4 is no longer a Puppet supported platform, so there is no puppet-agent package available--and I met some resistance doing a static Augeas build. Oh well.)
* Libral builds and runs fine on 32-bit, but as I feared, that same binary will not run on 64-bit systems, aborting with an ELF format error. If I recall, I've done this successfully on Windows (build on 32-bit, run on 64-bit) so, well, that's one small thing they've done better.