Skip to content

Commit fbc8e3e

Browse files
feat: 分析toolchain目录功能
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
1 parent e2bd830 commit fbc8e3e

21 files changed

Lines changed: 82 additions & 85 deletions

docs/advanced/install.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ cmake -B build -DDeePMD_DIR=/dir_to_deepmd-kit -DTorch_DIR=/dir_to_pytorch
5858
## Build with NEP
5959
This interface enables running MD simulations with the NEP model. It requires the [NEP_CPU](https://github.com/brucefan1983/NEP_CPU) library, which can be easily installed using toolchain as shown below:
6060
```bash
61-
./install_abacus_toolchain.sh --with-nep=install
61+
./install_abacus_toolchain_new.sh --with-nep=install
6262
```
6363

6464
To build ABACUS:

toolchain/README.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ABACUS Toolchain
22

3-
[![Version](https://img.shields.io/badge/version-2025.3-blue.svg)](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain)
3+
[![Version](https://img.shields.io/badge/version-2026.1-blue.svg)](https://github.com/deepmodeling/abacus-develop/tree/develop/toolchain)
44
[![License](https://img.shields.io/badge/license-GPL--compatible-green.svg)](#license)
55
[![Platform](https://img.shields.io/badge/platform-Linux-lightgrey.svg)]()
66

@@ -139,7 +139,7 @@ For air-gapped systems or unreliable internet:
139139
# 1. Create build directory and download packages
140140
mkdir build
141141
# Download required packages to build/ directory with proper naming
142-
# e.g., fftw-3.3.10.tar.gz, openmpi-5.0.8.tar.bz2
142+
# e.g., fftw-3.3.11.tar.gz, openmpi-5.0.10.tar.bz2
143143

144144
# 2. Run toolchain (will detect local packages)
145145
./toolchain_gnu.sh
@@ -178,20 +178,20 @@ Mix online and offline packages as needed - the toolchain automatically detects
178178
| CMake | 3.31.7 / 3.30.5 | Build system | BSD-3-Clause | Install |
179179
| GCC | 13.2.0 / 11.4.0 | C/C++ compiler | GPL-3.0-or-later WITH GCC-exception-3.1 | Install |
180180
| **MPI Libraries** |||||
181-
| OpenMPI | 5.0.8 / 4.1.6 | MPI implementation | BSD-3-Clause-Open-MPI | Install |
182-
| MPICH | 4.3.1 / 4.1.0 | Alternative MPI | mpich2 (BSD-like) | Alternative |
181+
| OpenMPI | 5.0.10 / 4.1.8 | MPI implementation | BSD-3-Clause-Open-MPI | Install |
182+
| MPICH | 5.0.1 / 4.3.2 | Alternative MPI | mpich2 (BSD-like) | Alternative |
183183
| **Math Libraries** |||||
184-
| OpenBLAS | 0.3.30 / 0.3.27 | Linear algebra | BSD-3-Clause | Install |
185-
| ScaLAPACK | 2.2.2 / 2.2.1 | Parallel linear algebra | BSD-3-Clause | Install |
184+
| OpenBLAS | 0.3.33 / 0.3.30 | Linear algebra | BSD-3-Clause | Install |
185+
| ScaLAPACK | 2.2.3 / 2.2.1 | Parallel linear algebra | BSD-3-Clause | Install |
186186
| **Scientific Libraries** |||||
187-
| FFTW | 3.3.10 / 3.3.10 | Fast Fourier Transform | GPL-2.0-or-later | Install |
187+
| FFTW | 3.3.11 / 3.3.10 | Fast Fourier Transform | GPL-2.0-or-later | Install |
188188
| LibXC | 7.0.0 / 6.2.2 | Exchange-correlation | MPL-2.0 | Install |
189-
| ELPA | 2025.06.001 / 2024.05.001 | Eigenvalue solver | LGPL-3.0-only | Install |
189+
| ELPA | 2026.02.001 / 2024.05.001 | Eigenvalue solver | LGPL-3.0-only | Install |
190190
| **Advanced Features** |||||
191-
| Cereal | master | C++ Serialization | BSD | Install |
192-
| RapidJSON | master | JSON parsing | MIT | Install |
193-
| LibRI | master | EXX calculations | GPL-3.0 | Install |
194-
| LibComm | master | EXX calculations | GPL-3.0 | Install |
191+
| Cereal | pinned commit | C++ Serialization | BSD | Install |
192+
| RapidJSON | pinned commit | JSON parsing | MIT | Install |
193+
| LibRI | pinned commit | EXX calculations | GPL-3.0 | Install |
194+
| LibComm | pinned commit | EXX calculations | GPL-3.0 | Install |
195195
| LibTorch | 2.1.2 / 1.12.1 | MLALGO support | BSD-3-Clause | Optional |
196196
| LibNPY | 1.0.1 / 1.0.1 | NumPy I/O | MIT | Optional |
197197
| NEP | main | Neuroevolution potential | MIT | Optional |
@@ -226,11 +226,11 @@ One can also manually edit the `toolchain_gnu.sh` for selecting specific version
226226
# Refer to scripts/package_versions.sh for specific version numbers
227227

228228
CMAKE_VERSION="main" # main=3.31.7, alt=3.30.5
229-
OPENMPI_VERSION="main" # main=5.0.8, alt=4.1.6
230-
OPENBLAS_VERSION="main" # main=0.3.30, alt=0.3.27
231-
ELPA_VERSION="main" # main=2025.06.001, alt=2024.05.001
229+
OPENMPI_VERSION="main" # main=5.0.10, alt=4.1.8
230+
OPENBLAS_VERSION="main" # main=0.3.33, alt=0.3.30
231+
ELPA_VERSION="main" # main=2026.02.001, alt=2024.05.001
232232
LIBXC_VERSION="main" # main=7.0.0, alt=6.2.2
233-
SCALAPACK_VERSION="main" # main=2.2.2, alt=2.2.1
233+
SCALAPACK_VERSION="main" # main=2.2.3, alt=2.2.1
234234
# Optional Libraries
235235
LIBTORCH_VERSION="main" # main=2.1.2, alt=1.12.1 (use alt for older GLIBC)
236236
```
@@ -517,7 +517,7 @@ scripts/
517517
| `scripts/common_vars.sh` | Shared variables and defaults |
518518
| `scripts/tool_kit.sh` | Utility functions and macros |
519519
| `scripts/parse_if.py` | Parser for IF_XYZ constructs |
520-
| `checksums.sha256` | Pre-calculated SHA256 checksums for packages |
520+
| `install/<pkg>/install_successful` | Per-package install lock/checksum file generated by `write_checksums` |
521521

522522
### Script Structure Details
523523

toolchain/build_abacus_aocc-aocl.sh

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,15 @@ BUILD_DIR=build_abacus_aocc_aocl
2222
rm -rf $BUILD_DIR
2323

2424
PREFIX=$ABACUS_DIR
25-
ELPA=$INSTALL_DIR/elpa-2025.06.001/cpu
26-
# ELPA=$INSTALL_DIR/elpa-2025.06.001/nvidia # for elpa-gpu
27-
CEREAL=$INSTALL_DIR/cereal-master/include/cereal
28-
LIBXC=$INSTALL_DIR/libxc-7.0.0
29-
RAPIDJSON=$INSTALL_DIR/rapidjson-master
25+
ELPA=${ELPA_ROOT}
26+
CEREAL=${CEREAL_ROOT}/include
27+
LIBXC=${LIBXC_ROOT}
28+
RAPIDJSON=${RAPIDJSON_ROOT}
3029
LAPACK=$AOCLhome/lib
3130
SCALAPACK=$AOCLhome/lib
3231
FFTW3=$AOCLhome
33-
LIBRI=$INSTALL_DIR/LibRI-master
34-
LIBCOMM=$INSTALL_DIR/LibComm-master
32+
LIBRI=${LIBRI_ROOT}
33+
LIBCOMM=${LIBCOMM_ROOT}
3534
USE_CUDA=OFF # set ON to enable gpu-abacus
3635
# NEP_DIR=$INSTALL_DIR/NEP_CPU-main
3736
# LIBTORCH=$INSTALL_DIR/libtorch-2.1.2/share/cmake/Torch
@@ -83,4 +82,4 @@ cat << EOF
8382
Done!
8483
To use the installed ABACUS version
8584
You need to source ${TOOL}/abacus_env.sh first !
86-
EOF
85+
EOF

toolchain/build_abacus_gcc-aocl.sh

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,15 @@ BUILD_DIR=build_abacus_gcc_aocl
2222
rm -rf $BUILD_DIR
2323

2424
PREFIX=$ABACUS_DIR
25-
ELPA=$INSTALL_DIR/elpa-2025.06.001/cpu
26-
# ELPA=$INSTALL_DIR/elpa-2025.06.001/nvidia # for elpa-gpu
27-
CEREAL=$INSTALL_DIR/cereal-master/include/cereal
28-
LIBXC=$INSTALL_DIR/libxc-7.0.0
29-
RAPIDJSON=$INSTALL_DIR/rapidjson-master
25+
ELPA=${ELPA_ROOT}
26+
CEREAL=${CEREAL_ROOT}/include
27+
LIBXC=${LIBXC_ROOT}
28+
RAPIDJSON=${RAPIDJSON_ROOT}
3029
LAPACK=$AOCLhome/lib
3130
SCALAPACK=$AOCLhome/lib
3231
FFTW3=$AOCLhome
33-
LIBRI=$INSTALL_DIR/LibRI-master
34-
LIBCOMM=$INSTALL_DIR/LibComm-master
32+
LIBRI=${LIBRI_ROOT}
33+
LIBCOMM=${LIBCOMM_ROOT}
3534
USE_CUDA=OFF # set ON to enable gpu-abacus
3635
# NEP_DIR=$INSTALL_DIR/NEP_CPU-main
3736
# LIBTORCH=$INSTALL_DIR/libtorch-2.1.2/share/cmake/Torch
@@ -81,4 +80,4 @@ cat << EOF
8180
Done!
8281
To use the installed ABACUS version
8382
You need to source ${TOOL}/abacus_env.sh first !
84-
EOF
83+
EOF

toolchain/build_abacus_gcc-mkl.sh

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,12 @@ BUILD_DIR=build_abacus_gcc_mkl
2222
rm -rf $BUILD_DIR
2323

2424
PREFIX=$ABACUS_DIR
25-
ELPA=$INSTALL_DIR/elpa-2025.06.001/cpu
26-
# ELPA=$INSTALL_DIR/elpa-2025.06.001/nvidia # for elpa-gpu
27-
CEREAL=$INSTALL_DIR/cereal-master/include/cereal
28-
LIBXC=$INSTALL_DIR/libxc-7.0.0
29-
RAPIDJSON=$INSTALL_DIR/rapidjson-master
30-
LIBRI=$INSTALL_DIR/LibRI-master
31-
LIBCOMM=$INSTALL_DIR/LibComm-master
25+
ELPA=${ELPA_ROOT}
26+
CEREAL=${CEREAL_ROOT}/include
27+
LIBXC=${LIBXC_ROOT}
28+
RAPIDJSON=${RAPIDJSON_ROOT}
29+
LIBRI=${LIBRI_ROOT}
30+
LIBCOMM=${LIBCOMM_ROOT}
3231
USE_CUDA=OFF # set ON to enable gpu-abacus
3332
# NEP_DIR=$INSTALL_DIR/NEP_CPU-main
3433
# LIBTORCH=$INSTALL_DIR/libtorch-2.1.2/share/cmake/Torch

toolchain/build_abacus_gnu.sh

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,15 @@ BUILD_DIR=build_abacus_gnu
2020
rm -rf $BUILD_DIR
2121

2222
PREFIX=$ABACUS_DIR
23-
LAPACK=$INSTALL_DIR/openblas-0.3.30/lib
24-
SCALAPACK=$INSTALL_DIR/scalapack-2.2.2/lib
25-
ELPA=$INSTALL_DIR/elpa-2025.06.001/cpu
26-
# ELPA=$INSTALL_DIR/elpa-2025.06.001/nvidia # for elpa-gpu
27-
FFTW3=$INSTALL_DIR/fftw-3.3.10
28-
CEREAL=$INSTALL_DIR/cereal-master/include/cereal
29-
LIBXC=$INSTALL_DIR/libxc-7.0.0
30-
RAPIDJSON=$INSTALL_DIR/rapidjson-master/
31-
LIBRI=$INSTALL_DIR/LibRI-master
32-
LIBCOMM=$INSTALL_DIR/LibComm-master
23+
LAPACK=${OPENBLAS_ROOT}/lib
24+
SCALAPACK=${SCALAPACK_ROOT}/lib
25+
ELPA=${ELPA_ROOT}
26+
FFTW3=${FFTW_ROOT}
27+
CEREAL=${CEREAL_ROOT}/include
28+
LIBXC=${LIBXC_ROOT}
29+
RAPIDJSON=${RAPIDJSON_ROOT}
30+
LIBRI=${LIBRI_ROOT}
31+
LIBCOMM=${LIBCOMM_ROOT}
3332
USE_CUDA=OFF # set ON to enable gpu-abacus
3433
# NEP_DIR=$INSTALL_DIR/NEP_CPU-main
3534
# LIBTORCH=$INSTALL_DIR/libtorch-2.1.2/share/cmake/Torch

toolchain/build_abacus_intel.sh

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,12 @@ BUILD_DIR=build_abacus_intel
2222
rm -rf $BUILD_DIR
2323

2424
PREFIX=$ABACUS_DIR
25-
ELPA=$INSTALL_DIR/elpa-2024.05.001/cpu
26-
# ELPA=$INSTALL_DIR/elpa-2024.05.001/nvidia # for gpu-lcao
27-
CEREAL=$INSTALL_DIR/cereal-master/include
28-
LIBXC=$INSTALL_DIR/libxc-7.0.0
29-
RAPIDJSON=$INSTALL_DIR/rapidjson-master
30-
LIBRI=$INSTALL_DIR/LibRI-master
31-
LIBCOMM=$INSTALL_DIR/LibComm-master
25+
ELPA=${ELPA_ROOT}
26+
CEREAL=${CEREAL_ROOT}/include
27+
LIBXC=${LIBXC_ROOT}
28+
RAPIDJSON=${RAPIDJSON_ROOT}
29+
LIBRI=${LIBRI_ROOT}
30+
LIBCOMM=${LIBCOMM_ROOT}
3231
USE_CUDA=OFF # set ON to enable gpu-abacus
3332
# NEP_DIR=$INSTALL_DIR/NEP_CPU-main
3433
# LIBTORCH=$INSTALL_DIR/libtorch-2.1.2/share/cmake/Torch

toolchain/install_abacus_toolchain.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ export SCRIPTDIR="${ROOTDIR}/scripts"
1414
export BUILDDIR="${ROOTDIR}/build"
1515
export INSTALLDIR="${ROOTDIR}/install"
1616
export SETUPFILE="${INSTALLDIR}/setup"
17-
export SHA256_CHECKSUM="${SCRIPTDIR}/checksums.sha256"
1817

1918
# ------------------------------------------------------------------------
2019
# Make a copy of all options for $SETUPFILE

toolchain/install_abacus_toolchain_new.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export SCRIPTDIR="${ROOTDIR}/scripts"
2020
export BUILDDIR="${ROOTDIR}/build"
2121
export INSTALLDIR="${ROOTDIR}/install"
2222
export SETUPFILE="${INSTALLDIR}/setup"
23-
export SHA256_CHECKSUM="${SCRIPTDIR}/checksums.sha256"
2423

2524
# Make a copy of all options for $SETUPFILE
2625
TOOLCHAIN_OPTIONS="$@"

toolchain/scripts/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# version file to force a rebuild of the entire toolchain
2-
VERSION="2025.3"
2+
VERSION="2026.1"

0 commit comments

Comments
 (0)