OOM Error when compiling LAMMPS with MBX package

32 views
Skip to first unread message

Darren Wayne Lim

unread,
Apr 30, 2026, 1:42:41 PMApr 30
to MBX-users
Hello,

I've been trying to compile MBX for use with LAMMPS (for classical simulations only), but strangely I run into an out-of-memory error which forces my kernel to kill the compilation when attempting to compile `.../mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.cpp`. Is it normal for the compilation to consume more than 30GB of memory?

Specifically, this is the set of commands that I run:
--------------------------------------------------
git clone -b release --depth 1 https://github.com/lammps/lammps.git lammps
cd lammps
cmake -B build \
    -C ./cmake/presets/basic.cmake \
    -D PKG_EXTRA-PAIR=yes \
    -D PKG_MBX=yes \
    -S cmake
cmake --build build -j 1
--------------------------------------------------

and the resulting output is:
--------------------------------------------------
Cloning into 'lammps'...
remote: Enumerating objects: 13858, done.
remote: Counting objects: 100% (13858/13858), done.
remote: Compressing objects: 100% (9942/9942), done.
remote: Total 13858 (delta 4806), reused 8079 (delta 3688), pack-reused 0 (from 0)
Receiving objects: 100% (13858/13858), 146.79 MiB | 25.52 MiB/s, done.
Resolving deltas: 100% (4806/4806), done.
loading initial cache file ./cmake/presets/basic.cmake

-- The CXX compiler identification is GNU 15.2.1
-- The C compiler identification is GNU 15.2.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found Git: /usr/bin/git (found version "2.53.0")
-- Running check for auto-generated files from make-based build system
-- Running in virtual environment: /home/dwl38/Wetting-Estimators/00-common/software/venv
   Setting Python interpreter to: /home/dwl38/Wetting-Estimators/00-common/software/venv/bin/python
-- Found MPI_CXX: /usr/lib/libmpi.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: CXX
-- Looking for C++ include omp.h
-- Looking for C++ include omp.h - found
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5") found components: CXX
-- Found GZIP: /usr/bin/gzip
-- Found JPEG: /usr/lib/libjpeg.so (found version "80")
-- Found PNG: /usr/lib/libpng.so (found version "1.6.55")
-- Found ZLIB: /usr/lib/libz.so (found version "1.3.2")
-- Found FFMPEG: /usr/bin/ffmpeg
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.5.1")
-- Checking for module 'fftw3'
--   Found fftw3, version 3.3.10
-- Found FFTW3: /usr/lib/libfftw3.so

Call Stack (most recent call first):
  CMakeLists.txt:567 (include)


-- MBX download requested - we will build our own
-- MBX_CONFIG_CC:
-- MBX_CONFIG_CXX: /usr/bin/mpicxx
-- MBX_CONFIG_FLAGS: --enable-mpi;--enable-openmp
-- Generating style headers...
-- Generating package headers...
-- Generating lmpinstalledpkgs.h...
-- Found Python3: /home/dwl38/Wetting-Estimators/00-common/software/venv/bin/python (found version "3.14.3") found components: Interpreter
-- The following tools and libraries have been found and configured:
 * Git
 * MPI
 * OpenMP
 * JPEG
 * PNG
 * ZLIB
 * FFTW3
 * Python3

-- <<< Build configuration >>>
   LAMMPS Version:   2026.3.30.0
   Operating System: Linux Manjaro
   CMake Version:    4.2.3
   Build type:       RelWithDebInfo
   Install path:     /home/dwl38/.local
   Generator:        Unix Makefiles using /usr/bin/make
-- Enabled packages: EXTRA-PAIR;GRAPHICS;KSPACE;MANYBODY;MBX;MOLECULE;RIGID
-- <<< Compilers and Flags: >>>
-- C++ Compiler:     /usr/bin/c++
      Type:          GNU
      Version:       15.2.1
      C++ Standard:  17
      C++ Flags:     -O2 -g -DNDEBUG
      Defines:       LAMMPS_SMALLBIG;LAMMPS_MEMALIGN=64;LAMMPS_OMP_COMPAT=4;LAMMPS_GZIP;LAMMPS_JPEG;LAMMPS_PNG;LAMMPS_FFMPEG;FFT_FFTW3;FFT_FFTW_THREADS
-- C compiler:       /usr/bin/cc
      Type:          GNU
      Version:       15.2.1
      C Flags:       -O2 -g -DNDEBUG
-- <<< Linker flags: >>>
-- Executable name:  lmp
-- Static library flags:    
-- <<< MPI flags >>>
-- MPI_defines:      MPICH_SKIP_MPICXX;OMPI_SKIP_MPICXX;_MPICC_H
-- MPI includes:     /usr/include
-- MPI libraries:    /usr/lib/libmpi.so;
-- <<< FFT settings >>>
-- Primary FFT lib:  FFTW3
-- Using double precision FFTs
-- Using threaded FFTs
-- Using builtin distributed FFT algorithms
-- Configuring done (2.3s)
-- Generating done (0.1s)
-- Build files have been written to: /home/dwl38/Wetting-Estimators/00-common/software/lammps/build
[  0%] Generating includes/lammps/domain.h
[  0%] Built target domain.h
[  0%] Creating directories for 'mbx_build'
[  1%] Performing download step (download, verify and extract) for 'mbx_build'
-- Downloading...
   dst='/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx-1.3.12.tar.gz'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://github.com/paesanilab/MBX/releases/download/v1.3.12/mbx-1.3.12.tar.gz'
-- [download 100% complete]
-- verifying file...
       file='/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx-1.3.12.tar.gz'
-- Downloading... done
-- extracting...
     src='/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx-1.3.12.tar.gz'
     dst='/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build'
-- extracting... [tar xf]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  1%] No update step for 'mbx_build'
[  1%] No patch step for 'mbx_build'
[  1%] Performing configure step for 'mbx_build'
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for ar... ar
checking the archiver (ar) interface... ar
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking for gawk... gawk
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking whether make sets $(MAKE)... yes
checking whether make supports the include directive... yes (GNU style)
checking whether make supports nested variables... yes
checking dependency style of gcc... gcc3
checking whether we are using the GNU C++ compiler... yes
checking whether /usr/bin/mpicxx accepts -g... yes
checking how to run the C++ preprocessor... /usr/bin/mpicxx -E
checking for ld used by /usr/bin/mpicxx... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the /usr/bin/mpicxx linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for /usr/bin/mpicxx option to produce PIC... -fPIC -DPIC
checking if /usr/bin/mpicxx PIC flag -fPIC -DPIC works... yes
checking if /usr/bin/mpicxx static flag -static works... no
checking if /usr/bin/mpicxx supports -c -o file.o... yes
checking if /usr/bin/mpicxx supports -c -o file.o... (cached) yes
checking whether the /usr/bin/mpicxx linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking dependency style of /usr/bin/mpicxx... gcc3
checking for /usr/bin/mpicxx option to support OpenMP... -fopenmp
checking for cos in -lm... yes
checking for library containing omp_get_thread_num... -lgomp
configure: fftw_dir: none=none
checking for fftw_plan_dft in -lfftw3... yes
checking for cblas_dgemm in -lgslcblas... yes
checking for gsl_blas_dgemm in -lgsl... yes
checking whether /usr/bin/mpicxx accepts -O2... yes
checking whether /usr/bin/mpicxx accepts -std=c++17... yes
configure: mpi_dir: none=none
checking for MPI_Init in -lmpi... yes
checking if compiler /usr/bin/mpicxx is able to find mpi.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/unittests/Makefile
config.status: creating plugins/Makefile
config.status: creating plugins/i-pi/Makefile
config.status: creating mbx.pc
config.status: creating mbx_version.h
config.status: creating config.h
config.status: executing libtool commands
config.status: executing depfiles commands
[  1%] Performing build step for 'mbx_build'
Making all in src
Making all in .
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-math_tools.lo -MD -MP -MF tools/.deps/libmbx_la-math_tools.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/math_tools.cpp -o tools/libmbx_la-math_tools.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-mpi_helper.lo -MD -MP -MF tools/.deps/libmbx_la-mpi_helper.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/mpi_helper.cpp -o tools/libmbx_la-mpi_helper.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-mt19937.lo -MD -MP -MF tools/.deps/libmbx_la-mt19937.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/mt19937.cpp -o tools/libmbx_la-mt19937.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-pbctools.lo -MD -MP -MF tools/.deps/libmbx_la-pbctools.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/pbctools.cpp -o tools/libmbx_la-pbctools.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-properties.lo -MD -MP -MF tools/.deps/libmbx_la-properties.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/properties.cpp -o tools/libmbx_la-properties.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-random-rotation.lo -MD -MP -MF tools/.deps/libmbx_la-random-rotation.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/random-rotation.cpp -o tools/libmbx_la-random-rotation.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-variable.lo -MD -MP -MF tools/.deps/libmbx_la-variable.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/variable.cpp -o tools/libmbx_la-variable.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-water_monomer_lp.lo -MD -MP -MF tools/.deps/libmbx_la-water_monomer_lp.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/water_monomer_lp.cpp -o tools/libmbx_la-water_monomer_lp.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT tools/libmbx_la-xmin.lo -MD -MP -MF tools/.deps/libmbx_la-xmin.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/tools/xmin.cpp -o tools/libmbx_la-xmin.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-read_connectivity.lo -MD -MP -MF io_tools/.deps/libmbx_la-read_connectivity.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/read_connectivity.cpp -o io_tools/libmbx_la-read_connectivity.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-read_nrg.lo -MD -MP -MF io_tools/.deps/libmbx_la-read_nrg.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/read_nrg.cpp -o io_tools/libmbx_la-read_nrg.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-write_connectivity.lo -MD -MP -MF io_tools/.deps/libmbx_la-write_connectivity.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/write_connectivity.cpp -o io_tools/libmbx_la-write_connectivity.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-read_xyz.lo -MD -MP -MF io_tools/.deps/libmbx_la-read_xyz.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/read_xyz.cpp -o io_tools/libmbx_la-read_xyz.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-write_xyz.lo -MD -MP -MF io_tools/.deps/libmbx_la-write_xyz.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/write_xyz.cpp -o io_tools/libmbx_la-write_xyz.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT io_tools/libmbx_la-write_nrg.lo -MD -MP -MF io_tools/.deps/libmbx_la-write_nrg.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/io_tools/write_nrg.cpp -o io_tools/libmbx_la-write_nrg.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT bblock/libmbx_la-external_call.lo -MD -MP -MF bblock/.deps/libmbx_la-external_call.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/bblock/external_call.cpp -o bblock/libmbx_la-external_call.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT bblock/libmbx_la-system.lo -MD -MP -MF bblock/.deps/libmbx_la-system.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/bblock/system.cpp -o bblock/libmbx_la-system.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT bblock/libmbx_la-sys_tools.lo -MD -MP -MF bblock/.deps/libmbx_la-sys_tools.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/bblock/sys_tools.cpp -o bblock/libmbx_la-sys_tools.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-energy1b.lo -MD -MP -MF potential/1b/.deps/libmbx_la-energy1b.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/energy1b.cpp -o potential/1b/libmbx_la-energy1b.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-mbnrg_1b_A1B3_deg5_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-mbnrg_1b_A1B3_deg5_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/mbnrg_1b_A1B3_deg5_v1.cpp -o potential/1b/libmbx_la-mbnrg_1b_A1B3_deg5_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-mbnrg_1b_A2_deg8_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-mbnrg_1b_A2_deg8_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/mbnrg_1b_A2_deg8_v1.cpp -o potential/1b/libmbx_la-mbnrg_1b_A2_deg8_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B2_deg4_v1x.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B2_deg4_v1x.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B2_deg4_v1x.cpp -o potential/1b/libmbx_la-poly_1b_A1B2_deg4_v1x.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B3_deg5_grad_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B3_deg5_grad_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B3_deg5_grad_v1.cpp -o potential/1b/libmbx_la-poly_1b_A1B3_deg5_grad_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B3_deg5_nograd_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B3_deg5_nograd_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B3_deg5_nograd_v1.cpp -o potential/1b/libmbx_la-poly_1b_A1B3_deg5_nograd_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B4_deg5_exp0_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B4_deg5_exp0_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B4_deg5_exp0_v1.cpp -o potential/1b/libmbx_la-poly_1b_A1B4_deg5_exp0_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B4_deg5_exp0_v1x.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B4_deg5_exp0_v1x.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B4_deg5_exp0_v1x.cpp -o potential/1b/libmbx_la-poly_1b_A1B4_deg5_exp0_v1x.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A2_deg8_grad_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A2_deg8_grad_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A2_deg8_grad_v1.cpp -o potential/1b/libmbx_la-poly_1b_A2_deg8_grad_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A2_deg8_nograd_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A2_deg8_nograd_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A2_deg8_nograd_v1.cpp -o potential/1b/libmbx_la-poly_1b_A2_deg8_nograd_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-ps.lo -MD -MP -MF potential/1b/.deps/libmbx_la-ps.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/ps.cpp -o potential/1b/libmbx_la-ps.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-x1b_A1B2_deg4_v1x.lo -MD -MP -MF potential/1b/.deps/libmbx_la-x1b_A1B2_deg4_v1x.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/x1b_A1B2_deg4_v1x.cpp -o potential/1b/libmbx_la-x1b_A1B2_deg4_v1x.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-x1b_A1B4_deg5_exp0_v1x.lo -MD -MP -MF potential/1b/.deps/libmbx_la-x1b_A1B4_deg5_exp0_v1x.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/x1b_A1B4_deg5_exp0_v1x.cpp -o potential/1b/libmbx_la-x1b_A1B4_deg5_exp0_v1x.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B2_deg6_grad_vmbpbe.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B2_deg6_grad_vmbpbe.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B2_deg6_grad_vmbpbe.cpp -o potential/1b/libmbx_la-poly_1b_A1B2_deg6_grad_vmbpbe.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B2_deg6_nograd_vmbpbe.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B2_deg6_nograd_vmbpbe.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B2_deg6_nograd_vmbpbe.cpp -o potential/1b/libmbx_la-poly_1b_A1B2_deg6_nograd_vmbpbe.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-mbnrg_1b_A1B2_deg6_vmbpbe.lo -MD -MP -MF potential/1b/.deps/libmbx_la-mbnrg_1b_A1B2_deg6_vmbpbe.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/mbnrg_1b_A1B2_deg6_vmbpbe.cpp -o potential/1b/libmbx_la-mbnrg_1b_A1B2_deg6_vmbpbe.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-mbnrg_1b_A1B1C1D3E1F1G1H3_deg3_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-mbnrg_1b_A1B1C1D3E1F1G1H3_deg3_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/mbnrg_1b_A1B1C1D3E1F1G1H3_deg3_v1.cpp -o potential/1b/libmbx_la-mbnrg_1b_A1B1C1D3E1F1G1H3_deg3_v1.o
libtool: compile:  /usr/bin/mpicxx -DHAVE_CONFIG_H -I. -I/home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src -I.. -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -fopenmp -O2 -std=c++17 -I/usr/include -DHAVE_FFTWD=1 -DHAVE_MPI=1 -MT potential/1b/libmbx_la-poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.lo -MD -MP -MF potential/1b/.deps/libmbx_la-poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.Tpo -c /home/dwl38/Wetting-Estimators/00-common/software/lammps/build/mbx_build-prefix/src/mbx_build/src/potential/1b/poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.cpp -o potential/1b/libmbx_la-poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.o
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[6]: *** [Makefile:2051: potential/1b/libmbx_la-poly_1b_A1B1C1D3E1F1G1H3_deg3_grad_v1.lo] Error 1
make[5]: *** [Makefile:2890: all-recursive] Error 1
make[4]: *** [Makefile:519: all-recursive] Error 1
make[3]: *** [Makefile:381: all] Error 2
make[2]: *** [CMakeFiles/mbx_build.dir/build.make:86: mbx_build-prefix/src/mbx_build-stamp/mbx_build-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:298: CMakeFiles/mbx_build.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

--------------------------------------------------

Running `dmesg` confirms that it is an OOM error, and that >30GB of memory was consumed:
--------------------------------------------------
[ 1247.199761] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-1001.slice/us...@1001.service/app.slice/app-dbus\x2d:1.2\x2dorg.gnome.Console.slice/vte-spawn-81728691-213f-483e-b9e7-6124bdb5a66b.scope,task=cc1plus,pid=8663,uid=1001
[ 1247.199776] Out of memory: Killed process 8663 (cc1plus) total-vm:30669420kB, anon-rss:30542876kB, file-rss:856kB, shmem-rss:0kB, UID:1001 pgtables:59960kB oom_score_adj:200

--------------------------------------------------

For what it's worth, this might turn out to be an issue for my machine only -- apologies if so -- just found it puzzling. Thanks!

Thanks,
Darren Wayne Lim

MBX-users

unread,
May 4, 2026, 7:29:48 PMMay 4
to MBX-users
Dear Darren,
          Thank you for reaching out to us! The NMA potential (A1B1C1D3E1F1G1H3) was released in MBXv1.3.6 and as you noticed does require a lot of memory to compile. We are currently working to disable the NMA potentials by default, so that for most people the compile uses much less memory and is faster. I will send a follow-up email soon once we have finished testing this new version and we are ready for you to try it out.

Best regards,
-The MBX Team

Henry Agnew

unread,
May 8, 2026, 4:35:40 PM (12 days ago) May 8
to MBX-users
Dear Darren,
        Hello again! We have released an alpha version that should not longer require as much memory during compilation. https://github.com/paesanilab/MBX/tree/alpha

If you want to try out this alpha version right away, you can use the instructions in our YouTube Tutorial (https://www.youtube.com/watch?v=4tyUcdVXv60) to compile this developer edition. Otherwise, we will work with the LAMMPS team to get this code fully released within the next month so that it is part of the usual LAMMPS+MBX build chain.

Hopefully this new version resolves your compilation issue, but let us know if you have additional questions.


Best regards,
-The MBX Team

Darren Wayne Lim

unread,
May 11, 2026, 4:09:56 PM (9 days ago) May 11
to MBX-users
Hi MBX Team,

Thank you very much for the early release! I can confirm that I have been able to successfully compile the alpha version as a standalone package on my memory-strapped laptop, and -- following the provided instructions -- was able to include and compile it into LAMMPS (without MPI). I was also able to run an extremely short simulation using the appropriate pair_style :)

However, I noticed that I can't compile LAMMPS with MPI using this route, and (correct me if I'm wrong) it seems like the standalone compilation of MBX is not designed for MPI? If that's the case, I shall patiently await the release of the LAMMPS+MBX build chain... or alternatively, is there a workaround to build LAMMPS with MPI plus the PLUGIN package, and then build the new alpha version of MBX as a plugin?

Either way, thank you very much for your help!

Thanks,
Darren

Henry Agnew

unread,
May 11, 2026, 4:56:18 PM (9 days ago) May 11
to MBX-users
Dear Darren,
         Glad you were able to compile and run successfully! For your question about MPI, what do you need MPI for specifically? MBX is both OMP and MPI parallelized, and in most cases OMP performs better and is therefore recommended instead.

If you have a specific workflow that needs MPI instead of OMP, let me know and I can show you how to enable it.

Best regards,
-The MBX Team

Darren Wayne Lim

unread,
May 12, 2026, 9:36:31 AM (8 days ago) May 12
to MBX-users
Hi Henry,

Ah, fair enough -- my previous workflows had all been MPI-based as that was what my other models were optimized on, so I was just trying to force a square peg into a round hole (old habits die hard I guess)... I've just tried an OMP simulation with MB-pol and indeed it performs very well :D

I have no problems adopting a mixed MPI/OMP workflow, so I'll take your advice and stick with OMP for MBX-based simulations. Again, thanks very much for all your help, and I'm very excited by the latest developments for MBX!

Cheers,
Darren
Reply all
Reply to author
Forward
0 new messages