Skip to content

Build Errors ​

Each entry is a symptom, its cause, and a solution. The exact wording of messages from your compiler and from CMake depends on their versions; the entries describe the situation rather than quote every tool's text.

Missing LAPACK or LAPACKE ​

SymptomCMake fails while configuring, reporting that it could not find LAPACK, or could not find lapacke.h
CauseThe matrix-product-state engine needs LAPACKE for its singular value decompositions, and the development packages are not installed
SolutionOn Ubuntu: sudo apt install liblapacke-dev liblapack-dev libblas-dev. On macOS LAPACK comes from the Accelerate framework (macOS is unverified). On Windows, run scripts\fetch-openblas-windows.ps1, or set MENOS_OPENBLAS_ROOT to an LP64 OpenBLAS release directory

OpenBLAS is ILP64 (Windows) ​

SymptomCMake stops with ... is an ILP64 OpenBLAS; use the LP64 (OpenBLAS-<version>-x64.zip) release
CauseMENOS passes 32-bit LAPACK integers; the x64-64 OpenBLAS release uses 64-bit ones
SolutionUse the OpenBLAS-<version>-x64.zip release, which scripts\fetch-openblas-windows.ps1 downloads

CUDA requested with MSVC ​

SymptomCMake stops with MENOS_ENABLE_CUDA is not supported with MSVC
CauseNative Windows builds are CPU-only; CUDA on Windows is a recorded deferral (docs/adr/0022)
SolutionConfigure without MENOS_ENABLE_CUDA, or build the CUDA backend under WSL

MSVC 14.51 refused ​

SymptomCMake stops with MSVC 19.51... (toolset 14.51) miscompiles MENOS
CauseThe 14.51 toolset's optimizer reads an uninitialised loop bound in MENOS's planner code, so runs crash, hang or compute a wrong result (measured, docs/adr/0022 section 3.1). The 14.50 toolset compiles it correctly
SolutionInstall the "MSVC v14.50" toolset in the Visual Studio Installer (component Microsoft.VisualStudio.Component.VC.14.50.18.0.x86.x64) and enter the developer environment with -vcvars_ver=14.50; scripts\verify-windows.ps1 does this

cl, ninja or the Windows SDK not found ​

Symptomcmake --preset windows-release cannot find the C++ compiler, Ninja or system headers
CauseThe windows-* presets need a Visual Studio x64 developer environment
SolutionRun scripts\verify-windows.ps1, which enters one, or open a "x64 Native Tools" prompt first

Compiler too old ​

SymptomCompile errors about unsupported C++20 features
CauseMENOS needs C++20: GCC 12+, Clang 16+, or AppleClang 15+; on Windows, MSVC from Visual Studio 2026 is what is tested
SolutionInstall a newer compiler and tell CMake to use it (CXX=g++-13 or -DCMAKE_CXX_COMPILER=…)

CMake too old ​

SymptomCMake stops immediately, saying a newer version is required
CauseThe project requires CMake 3.25 or newer
SolutionInstall a newer CMake (for example from your distribution's backports, or pip install cmake)

Unsupported operating system ​

Symptomerror: "menos supports only Linux, macOS and Windows"
CauseThe source refuses to build on other operating systems
SolutionBuild on Linux, macOS or Windows (x64, MSVC)

scikit-build-core or nanobind not found ​

SymptomThe Python build fails before compiling, about a missing build backend
CauseThe build tools are fetched by the installer into an isolated environment; this fails if you disabled build isolation without installing them
SolutionInstall with default isolation, or first install the pinned tools: scikit-build-core==1.0.3 and nanobind==3.1.0

Out of memory while compiling ​

SymptomThe compiler is killed partway through the build
CauseParallel compilation of large translation units on a machine with little memory
SolutionBuild with fewer parallel jobs, for example cmake --build --preset release -j2

clang-format or clang-tidy not found ​

Symptomscripts/verify.sh fails at its first stages
CauseThe full verification script runs formatting and static analysis, which need those tools
SolutionInstall clang-format and clang-tidy. They are development-only and are not needed to use MENOS

CUDA build errors ​

See Troubleshooting CUDA.

See also ​

Installation Problems · Requirements

Released under the Apache-2.0 license. GitHub · PyPI