Build Dependencies

To build the dependencies from source and install them into user space rather than system-wide, use the standalone scdv build scripts in contrib/dependency/ described below.

For a complete, self-contained environment, the per-platform scripts ubuntu2404/build-scdv-ubuntu24.sh and macos26/build-scdv-macos26.sh build solvcon’s full runtime stack from source – zlib, OpenSSL, SQLite, CPython, pybind11, Cython, NumPy, SciPy, Qt, and PySide6 – into a versioned prefix under your home directory (by default ${HOME}/var/scdv/<platform>-py<pyver>-qt<qtver>).

The build is organized into four sections: BASE, PYTHON, NUMPY, and QT with the corresponding environment variables SCDVBUILD_BASE, SCDVBUILD_PYTHON, SCDVBUILD_NUMPY, and SCDVBUILD_QT. If none is set, the script builds everything.

The script never runs apt or Homebrew itself. Print the prerequisite commands, review them, and run them yourself:

cd contrib/dependency/ubuntu2404
./build-scdv-ubuntu24.sh --print-apt   # review, then run the printed commands
./build-scdv-ubuntu24.sh               # build the whole stack into the prefix

Useful flags: --print-prefix reports the install prefix and exits; --no-confirm skips the pre-build prompt for non-interactive runs; --skip PKG omits a package (repeatable or comma-separated); and --write-activate-only (re)writes just the activation script.

When the build finishes it writes an activate script in the prefix. Source it to put the freshly built Python and Qt on your PATH, and run scdv_deactivate to restore the original environment:

source ${HOME}/var/scdv/<platform>-py<pyver>-qt<qtver>/activate

Once the dependencies are in place, build solvcon as described in Build solvcon.