Automic VaultAutomic Vault

brew

Install bc with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, zypper

Arbitrary precision numeric processing language. Version 1.08.2 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install bc

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install bc

MacPorts ports tree · math/bc/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add bc

Alpine Linux edge package indexes · bc · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install bc

Debian stable package indexes · bc · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install bc

Fedora Rawhide package metadata · bc · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#bc

nixpkgs package indexes · pkgs/by-name/bc/bc/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S bc

Arch Linux sync databases · bc · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install bc

openSUSE Tumbleweed package metadata · bc · source: download.opensuse.org

Windows

Scoopverified · 92%
scoop install main/bc

Scoop official bucket manifest trees · bucket/bc.json · source: api.github.com

overview

Package summary

Arbitrary precision numeric processing language

Commands and aliases

  • bc
  • dc

history

Project history and usage

bc is the Unix arbitrary-precision calculator language: small enough to be a command-line calculator, but old and standard enough to appear in scripts, POSIX systems, and package-manager bootstrap sets. GNU bc packages both bc and dc, preserving the classic infix calculator and reverse-polish desk-calculator pairing.

Project history

The bc language predates GNU bc as a Unix utility for arbitrary-precision arithmetic. POSIX standardizes bc as an arbitrary-precision arithmetic language with an interactive mode, file operands, and the -l math-library option.

GNU bc is the GNU implementation of that utility family. Its documentation describes bc as an arbitrary-precision numeric processing language and ships dc alongside it, keeping the historical relationship between the higher-level bc language and the lower-level desk calculator.

Adoption history

bc became a portable denominator for shell arithmetic that exceeded the shell's integer facilities or needed decimal scale control. Because POSIX specifies it, distribution packages for bc are common across Unix-like systems, and Homebrew, Debian, Fedora, Arch, Nix, MacPorts, Alpine, and others all carry it.

The GNU package matters especially on systems where the base OS does not include GNU userland behavior by default, such as macOS, and in minimal containers where explicit installation keeps scripts reproducible.

How it is used

Typical command-line use pipes expressions into bc, invokes bc -l for math functions and a nonzero default scale, or runs bc interactively as a tiny programmable calculator. Scripts use it for decimal arithmetic, base conversion, and calculations where shell integer arithmetic is not enough.

The paired dc executable serves users who prefer reverse-polish notation or need the older stack-calculator language.

Why package nerds care

bc is a package-nerd fossil with live production value: it is tiny, standardized, scriptable, and still frequently pulled into build images because some old configure script, packaging helper, or shell one-liner expects it.

It sits at an interesting boundary between core utility and optional package. On one machine it is part of the assumed Unix furniture; on another it is the missing dependency that breaks a build with a calculator-shaped hole.

Timeline

  • POSIX Issue 7: bc specified as an arbitrary-precision arithmetic language with -l math-library behavior.
  • GNU era: GNU bc maintained as the GNU implementation of bc and dc.
  • 2020s: bc remains packaged across major Unix-like package managers and used in scripts and build environments.

Related projects

  • dc is the older desk-calculator companion shipped by GNU bc.
  • POSIX sh arithmetic, awk, Python, and calculator-oriented tools overlap with common bc use cases, but bc remains the small standardized CLI option.
  • GNU core-style packaging and Unix userland distributions are the main adoption context.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 8 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
bccliglobal executable
dccliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.08.2
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://www.gnu.org/software/bc/

  • infoNo package-manager update timestamp was available.low confidence
  • infoRelease/tag comparison is only available for GitHub repositories.https://www.gnu.org/software/bc/none confidence

install metadata

Package metadata

Package keybrew:bc
Version1.08.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/bc
Homepagehttps://www.gnu.org/software/bc/
Upstream docshttps://www.gnu.org/software/bc
LicenseGPL-3.0-or-later
Source archivehttps://ftpmirror.gnu.org/gnu/bc/bc-1.08.2.tar.gz
Build dependenciestexinfo
Uses from macOSflex, libedit
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebc
Version Scheme0
Revision0
Conflicts With
  • bc-gh
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyyes
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

bc 1.07.1-4

GNU bc arbitrary precision calculator language

https://www.gnu.org/software/bc/

sudo apt install bc
  • Section: math
  • Architecture: amd64
  • 2 dependencies
  • normalized package name match
  • Matched by: Bc
Debian stable package indexes · deb.debian.org · Debian stable package indexes: bc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

dc 1.07.1-4

GNU dc arbitrary precision reverse-polish calculator

https://www.gnu.org/software/bc/

sudo apt install dc
  • Section: math
  • Architecture: amd64
  • Source Package: bc
  • 1 dependencies
  • normalized package name match
  • Matched by: Bc
Debian stable package indexes · deb.debian.org · Debian stable package indexes: dc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

bc

nix profile install nixpkgs#bc
  • normalized package name match
  • Matched by: Bc
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/bc/bc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

bc 1.07.1-3ubuntu4

GNU bc arbitrary precision calculator language

https://www.gnu.org/software/bc/

sudo apt install bc
  • Section: math
  • Architecture: amd64
  • 2 dependencies
  • normalized package name match
  • Matched by: Bc
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: bc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz
Ubuntu apt95%

dc 1.07.1-3ubuntu4

GNU dc arbitrary precision reverse-polish calculator

https://www.gnu.org/software/bc/

sudo apt install dc
  • Section: math
  • Architecture: amd64
  • Source Package: bc
  • 1 dependencies
  • normalized package name match
  • Matched by: Bc
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: dc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz
apk95%

bc 1.08.2-r1

Arbitrary precision numeric processing language (calculator)

https://www.gnu.org/software/bc/bc.html

sudo apk add bc
  • License: GPL-3.0-or-later
  • Architecture: x86_64
  • Source Package: bc
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Bc
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
apk95%

bc-doc 1.08.2-r1

Arbitrary precision numeric processing language (calculator) (documentation)

https://www.gnu.org/software/bc/bc.html

sudo apk add bc-doc
  • License: GPL-3.0-or-later
  • Architecture: x86_64
  • Source Package: bc
  • normalized package name match
  • Matched by: Bc
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: bc-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
dnf95%

bc 1.08.2-4.fc44

GNU's bc (a numeric processing language) and dc (a calculator)

https://www.gnu.org/software/bc/

sudo dnf install bc
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: bc
  • 3 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Bc
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: bc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

bc 1.08.2-1

An arbitrary precision calculator language

https://www.gnu.org/software/bc/

sudo pacman -S bc
  • License: GPL-3.0-only
  • Architecture: x86_64
  • 1 dependencies
  • normalized package name match
  • Matched by: Bc
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: bc from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

bc 1.08.2-1.4

GNU Command Line Calculator

https://www.gnu.org/software/bc/

sudo zypper install bc
  • License: GFDL-1.2-or-later AND GPL-3.0-or-later
  • Category: Productivity/Scientific/Math
  • Architecture: x86_64
  • Source Package: bc
  • 2 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Bc
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: bc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

bc

sudo port install bc
  • normalized package name match
  • Matched by: Bc
MacPorts ports tree · api.github.com · MacPorts ports tree: math/bc/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

main/bc

scoop install main/bc
  • normalized package name match
  • Matched by: Bc
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/bc.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Combined YAML source

View the package source record on GitHub.

combined/bc.yml

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment