vscentrum / vsc-software-stack

Central repository of easyconfigs used in the software installations on VSC clusters.
2 stars 6 forks source link

NanoPack #407

Closed boegel closed 3 weeks ago

boegel commented 2 months ago
PetrKralCZ commented 2 months ago
PetrKralCZ commented 2 months ago
PetrKralCZ commented 2 months ago
PetrKralCZ commented 2 months ago
boegel commented 2 months ago

@PetrKralCZ Some clarification by researcher:

In my application I forgot to mention that all tools should be included in the nanopack installation (also the rust apps).
'Pip instal' won't install the rust packages.

Can you look into the Rust tools too, see NanoPack's README?

PetrKralCZ commented 2 months ago
PetrKralCZ commented 2 months ago
PetrKralCZ commented 1 month ago
PetrKralCZ commented 1 month ago
PetrKralCZ commented 1 month ago
boegel commented 1 month ago

Replaced with:

boegel commented 1 month ago

@PetrKralCZ All open PRs merged, is next step a PR for NanoPack itself?

PetrKralCZ commented 1 month ago

@PetrKralCZ All open PRs merged, is next step a PR for NanoPack itself?

No, the last dependency needed for NanoPack is kyber. Which gives me the following error:

== 2024-09-12 15:53:37,826 build_log.py:171 ERROR EasyBuild crashed with an error (at easybuild/easybuild-framework/easybuild/base/exceptions.py:126 in __init__): cmd " cargo build --profile=release  --tests -j 8 " exited with exit code
 101 and output:
   Compiling autocfg v1.1.0
   Compiling libc v0.2.140
   Compiling cfg-if v1.0.0
   Compiling proc-macro2 v1.0.52
   Compiling quote v1.0.26
   Compiling unicode-ident v1.0.8
   Compiling pkg-config v0.3.26
   Compiling syn v1.0.109
   Compiling scopeguard v1.1.0
   Compiling crossbeam-utils v0.8.15
   Compiling num-traits v0.2.15
   Compiling memoffset v0.8.0
   Compiling crossbeam-epoch v0.9.14
   Compiling num-integer v0.1.45
92 |     feature(proc_macro_span, proc_macro_span_shrink)ous error
   |                              ^^^^^^^^^^^^^^^^^^^^^^..
For more information about this error, try `rustc --explain E0635`.rse_cmd_output)
   Compiling version_check v0.9.4cro2` (lib) due to previous error
   Compiling rayon-core v1.11.0for other jobs to finish... lock /scratch/gent/vo/001/gvo00117/easybuild/RHEL8/cascadelake-ampere-ib/software/.locks/_scratch_gent_vo_001_gvo00117_easybuild_RHEL8_cascadelake-ampere-ib_software_kyber_0.4.0For more information about this error, try `rustc --explain E0635`.rse_cmd_output)
error: could not compile `proc-macro2` (lib) due to previous errort/vo/001/gvo00117/easybuild/RHEL8/cascadelake-ampere-ib/software/.locks/_scratch_gent_vo_001_gvo00117_easybuild_RHEL8_cascadelake-ampere-ib_software_kyber_0.4.0-GCC-12.3.warning: build failed, waiting for other jobs to finish... lock /scratch/gent/vo/001/gvo00117/easybuild/RHEL8/cascadelake-ampere-ib/software/.locks/_scratch_gent_vo_001_gvo00117_easybuild_RHEL8_cascadelake-ampere-ib_software_kyber_0.4.0 (at easybuild/easybuild-framework/easybuild/tools/run.py:682 in parse_cmd_output)01/gvo00117/easybuild/RHEL8/cascadelake-ampere-ib/software/.locks/_scratch_gent_vo_001_gvo00117_easybuild_RHEL8_cascadelake-ampere-ib_software_kyber_0.4.0

WIP easyconfig:

boegel commented 1 month ago

@PetrKralCZ Seems like that should be fixable by using a newer version of proc-macro2, see https://github.com/dtolnay/proc-macro2/issues/356 + https://github.com/rust-lang/rust/issues/113152.

That probably means patching the Cargo.lock file

PetrKralCZ commented 1 month ago

@PetrKralCZ Seems like that should be fixable by using a newer version of proc-macro2, see dtolnay/proc-macro2#356 + rust-lang/rust#113152.

That probably means patching the Cargo.lock file

That old version of proc-macro2 seems to be required by clap_derive.

== 2024-09-17 12:30:13,668 build_log.py:171 ERROR EasyBuild crashed with an error (at easybuild/easybuild-framework/easybuild/base/exceptions.py:126 in __init__): cmd " cargo build --profile=release  --tests -j 8 " exited with exit code 101 and output:
error: failed to select a version for the requirement `proc-macro2 = "^1.0.42"` (locked to 1.0.86)
candidate versions found which didn't match: 1.0.52
location searched: directory source `/tmp/vsc45304/easybuild/build/kyber/0.4.0/GCC-12.3.0/easybuild_vendor` (which is replacing registry `crates-io`)
required by package `clap_derive v4.1.8`
    ... which satisfies dependency `clap_derive = "=4.1.8"` (locked to 4.1.8) of package `clap v4.1.8`
    ... which satisfies dependency `clap = "^4.1.4"` (locked to 4.1.8) of package `kyber v0.4.0 (/tmp/vsc45304/easybuild/build/kyber/0.4.0/GCC-12.3.0/kyber-0.4.0)`
perhaps a crate was updated and forgotten to be re-vendored?
As a reminder, you're using offline mode (--offline) which can sometimes cause surprising resolution failures, if this error is too confusing you may wish to retry without the offline flag.
 (at easybuild/easybuild-framework/easybuild/tools/run.py:682 in parse_cmd_output)
boegel commented 1 month ago

@PetrKralCZ To avoid that problem with clap_derive, we'll need to use clap_derive 4.4.11, which requires proc-macro2 1.0.69 (which should be recent enough to avoid the other problem).

Hopefully that won't lead to other similar issues...

PetrKralCZ commented 3 weeks ago
boegel commented 3 weeks ago

@PetrKralCZ PR merged, software installed, ready for cleanup