Description
When using EasyBuild, it seems that the build directory must reside on a filesystem with 512-byte inodes. When using 256-byte inodes, EasyBuild fails while copying recipes to the build directory with errors such as the following:
ERROR: Build of /home/user/easy_buid/zlib-1.2.11-GCCcore-9.3.0.eb failed (err: "build failed (first 300 chars): Failed to copy file /cvmfs/soft.computecanada.ca/easybuild/site-packages/easybuild-easyblocks/easybuild/easyblocks/generic/configuremake.py to /home/user/tmp/eb-611zkjwg/reprod_20211204102755_332067/easyblocks/configuremake.py: [Errno 28] No space left on device: '/home/user/tmp/eb-611zkjwg/repr")
The issue seems to be that the inodes are too small to hold extended attributes set by EasyBuild. (The /home
filesystem in this example has ample free space.) I tested creating two ext4 filesystems inside files, one with 256-byte inodes, the other with 512-byte ones, mounting them, and using them for build directories. Using the partition with 256-byte inodes, EasyBuild threw an error like the above. Using the partition with 512-byte inodes fixed the issue.
Since the default for many mkfs.*
programs is 256-byte inodes, perhaps this should be documented as an EasyBuild requirement.