Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

how to the system toolchain with Prefix #908

Closed
dobbi84 opened this issue Nov 11, 2024 · 5 comments
Closed

how to the system toolchain with Prefix #908

dobbi84 opened this issue Nov 11, 2024 · 5 comments
Labels
EESSI Related to EESSI project problem report
Milestone

Comments

@dobbi84
Copy link

dobbi84 commented Nov 11, 2024

i am trying to reproduce the EESSI approach thus building using Easybuild and Gentoo Prefix. If i try to build, fo example XZ-5.4.5-GCCcore-13.3.0, it fails with the following error message:

ERROR: Build of /home/dobbi/intel/sapphirerapids/usr/easybuild/easyconfigs/g/gettext/gettext-0.22.5.eb failed (err: 'build failed (first 300 chars): cmd "/home/dobbi/intel/sapphirerapids/sources/generic/eb_v4.9.4/ConfigureMake/config.guess" exited with exit code 1 and output:\n/bin/bash: /lib64/libc.so.6: version `GLIBC_2.33\' not found (required by /home/dobbi/intel/sapphirerapids/software/ncurses/6.4/lib/libtinfo.so.6)\n')

So it is going for the system /lib64/libc.so.6 (v2.28) instead of lib64/libc.so.6 (v2.39) provided by Prefix.
What would be the best approach to use the Prefix provided utils and libs?

@ocaisa
Copy link
Member

ocaisa commented Nov 21, 2024

You are better off reporting this kid of issue to EESSI (e.g., https://gitlab.com/eessi/support/-/issues).

Having said that, your message lacks a lot of information. When you say "trying to reproduce the EESSI approach", what exactly do you mean? Are you already using the EESSI compat layer or building your own? Are you configuring EasyBuild the same way we configure it in EESSI? There is a lot of tooling around how we do builds for EESSI, are you using anything like that?

@ocaisa
Copy link
Member

ocaisa commented Nov 21, 2024

We have a module in EESSI called EESSI-extend which configures EESSI to allow you to extend it (using EasyBuild):

[ocaisa@login1 ~]$ module load EESSI-extend 
-- Using /tmp/$USER as a temporary working directory for installations, you can override this by setting the environment variable WORKING_DIR and reloading the module
(e.g., /dev/shm is a common option) 
Configuring for use of EESSI_USER_INSTALL under /home/ocaisa/eessi
-- To create installations for EESSI, you _must_ have write permissions to /home/ocaisa/eessi/versions/2023.06/software/linux/x86_64/intel/skylake_avx512
-- You may wish to configure a sources directory for EasyBuild (for example, via setting the environment variable EASYBUILD_SOURCEPATH) to allow you to reuse existing
sources for packages. 
[ocaisa@login1 ~]$ env | grep EASYB
EASYBUILD_UMASK=077
EASYBUILD_READ_ONLY_INSTALLDIR=1
EASYBUILD_HOOKS=/cvmfs/software.eessi.io/versions/2023.06/init/easybuild/eb_hooks.py
EASYBUILD_STICKY_BIT=1
EASYBUILD_MODULE_EXTENSIONS=1
EBDEVELEASYBUILD=/cvmfs/software.eessi.io/versions/2023.06/software/linux/x86_64/intel/skylake_avx512/software/EasyBuild/4.9.4/easybuild/EasyBuild-4.9.4-easybuild-devel
EASYBUILD_IGNORE_OSDEPS=1
EBROOTEASYBUILD=/cvmfs/software.eessi.io/versions/2023.06/software/linux/x86_64/intel/skylake_avx512/software/EasyBuild/4.9.4
EASYBUILD_FILTER_DEPS=Autoconf,Automake,Autotools,binutils,bzip2,DBus,flex,gettext,gperf,help2man,intltool,libreadline,libtool,M4,makeinfo,ncurses,util-linux,XZ,zlib
EASYBUILD_ALLOW_LOADED_MODULES=EasyBuild,EESSI-extend
EASYBUILD_INSTALLPATH=/home/ocaisa/eessi/versions/2023.06/software/linux/x86_64/intel/skylake_avx512
EASYBUILD_RPATH=1
EASYBUILD_FILTER_ENV_VARS=LD_LIBRARY_PATH
EASYBUILD_PREFIX=/tmp/ocaisa/easybuild
EBVERSIONEASYBUILD=4.9.4
EASYBUILD_EXPERIMENTAL=1
EASYBUILD_TRACE=1
EASYBUILD_DEBUG=1
EASYBUILD_SYSROOT=/cvmfs/software.eessi.io/versions/2023.06/compat/linux/x86_64
EASYBUILD_ZIP_LOGS=bzip2

@ocaisa
Copy link
Member

ocaisa commented Nov 21, 2024

Note that gettext appears in EASYBUILD_FILTER_DEPS

@dobbi84
Copy link
Author

dobbi84 commented Nov 21, 2024

Thanks i guess you provided me with the answer by mentioning EASYBUILD_FILTER_DEPS. I think EASYBUILD_SYSROOT might also be solving the issue. I will try them out.

I was trying to understand EESSI and i missed EESSI-extend, this explains many things.

@dobbi84
Copy link
Author

dobbi84 commented Nov 27, 2024

thanks @ocaisa i think EASYBUILD_SYSROOT EASYBUILD_FILTER_DEPS did the trick:

$ ldd /home/dobbi/intel/sapphirerapids/.local/easybuild/software/gettext/0.22.5/bin/gettext
        linux-vdso.so.1 (0x00007ffe2beba000)
        libc.so.6 => /home/dobbi/intel/sapphirerapids/lib64/libc.so.6 (0x00007f4e62406000)
        /home/dobbi/intel/sapphirerapids/lib64/ld-linux-x86-64.so.2 (0x00007f4e62604000)

@boegel boegel added problem report EESSI Related to EESSI project labels Dec 3, 2024
@boegel boegel added this to the 4.x milestone Dec 3, 2024
@boegel boegel closed this as completed Dec 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EESSI Related to EESSI project problem report
Projects
None yet
Development

No branches or pull requests

3 participants