Difference between revisions of "Infrastructure/software/glibc"
(→Installation) |
(→Background) |
||
Line 1: | Line 1: | ||
= Background = | = Background = | ||
+ | |||
+ | The operating system on Abel dates back to the original year of installation (2012, for all we recall). | ||
+ | While many development tools and libraries are available in newer versions (through the <tt>module</tt> | ||
+ | system), the version of the basic GNU C Library is intricately linked to the Linux kernel. | ||
+ | Some packages that are distributed in pre-compiled form (typically as Python wheels) require | ||
+ | more recent versions of the C Library. | ||
+ | A little bit of trickery makes it possible to get these binaries to execute on | ||
+ | Abel, using a custom, NLPL-specific installation of the GNU C Library and its | ||
+ | dynamic linker. | ||
= Installation = | = Installation = |
Revision as of 15:02, 19 September 2018
Background
The operating system on Abel dates back to the original year of installation (2012, for all we recall). While many development tools and libraries are available in newer versions (through the module system), the version of the basic GNU C Library is intricately linked to the Linux kernel. Some packages that are distributed in pre-compiled form (typically as Python wheels) require more recent versions of the C Library. A little bit of trickery makes it possible to get these binaries to execute on Abel, using a custom, NLPL-specific installation of the GNU C Library and its dynamic linker.
Installation
wget https://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.bz2 tar jpSxf glibc-2.18.tar.bz2 cd glibc-2.18 mkdir build cd build module purge module load gcc/4.9.2 cuda/8.0 ../configure --prefix=/projects/nlpl/software/glibc/2.18 make -j 8 make install make localedata/install-locales
cp -pr /etc/ld.so.conf* /projects/nlpl/software/glibc/2.18/etc /projects/nlpl/software/glibc/2.18/sbin/ldconfig ln -s /usr/share/zoneinfo/Europe/Oslo /projects/nlpl/software/glibc/2.18/etc/localtime