Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

bc-gh is a free, open-source implementation of the POSIX bc calculator and Unix dc, with GNU and BSD extensions. It provides both command-line tools from one project, supports Unix-like systems and Windows 10 or later, and deliberately leaves out dc’s shell-execution ! command.

What bc-gh includes

bc-gh implements bc, a command-line calculator based on the POSIX standard, and dc, a reverse-Polish-notation calculator. The project adds GNU extensions to bc and GNU and FreeBSD extensions to dc, as well as the BSD flavor’s period (.) extension to bc. The upstream project describes dc as being available through a symbolic link to the same binary. See the bc project documentation for its feature and implementation details.

That means bc-gh is not a claim that every GNU or BSD-specific behavior is identical across implementations. If a script depends on an extension rather than the POSIX baseline, check the relevant command’s documentation and test the script in the target environment.

Install a packaged version

A package manager is the simplest option when it supports bc-gh. Package names and versions differ by ecosystem, so check your distribution’s current metadata rather than assuming a single version applies everywhere.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Homebrew: install with brew install bc-gh. Its formula provides bc and dc and conflicts with the standard bc formula because both supply those command names. The formula lists version 7.0.3; see the Homebrew formula for current metadata.
  • OpenBSD: the package snapshot lists bc-gh-7.1.0p0. Check the OpenBSD package entry for the version available to your system.
  • Gentoo: package metadata describes bc-gh as POSIX bc and Unix dc with GNU extensions, and identifies the BSD-2 license. See the Gentoo package entry.

These are ecosystem-specific package records, not a universal release number. Follow the package manager’s normal installation and upgrade process for your operating system.

Build from source on a POSIX-compatible system

The documented optimized build uses the project’s configure script followed by make. Run installation with the permissions required by your chosen destination.

Rank #2
Sale
The Unix Programming Environment (Prentice-Hall Software Series)
  • The Unix Programming Environment (Prentice-Hall Software Series)
  • Product Type: ABIS_BOOK
  • Pearson
  1. From the bc-gh source directory, configure an optimized build: ./configure.sh -O3.
  2. Compile it: make.
  3. Install the resulting programs: make install.

By default, installation places bc and dc under /usr/local. Set PREFIX or use --prefix to choose another installation prefix. The project documents additional configure options for building only bc, only dc, or a debug build. Consult its build instructions for the option details and requirements.

Build on Windows

bc-gh supports Windows 10 or later and documents builds using Visual Studio and MSBuild. The resulting command-line programs are bc.exe and dc.exe; on Windows, dc.exe is copied from the bc executable rather than linked as a separate executable. Use the project’s Windows build instructions for the applicable Visual Studio and MSBuild steps.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why dc’s ! command is missing

bc-gh intentionally omits dc’s ! command because it can execute shell commands. The maintainer identifies shell execution as a security concern; this is a deliberate design choice, not evidence that all dc implementations omit the command. Scripts that rely on ! therefore need a different approach when run with bc-gh.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Use bc mathematics from C

Alongside its command-line programs, the project offers bcl, a library that exposes bc mathematics through C bindings. To build the library instead of the command-line executables, select library mode with ./configure.sh -a or ./configure.sh --library. The project documentation covers its build options.

License and implementation

bc-gh is free and open-source software under the BSD 2-clause license. Its implementation uses pure ISO C99, POSIX 2008 APIs, and custom Windows compatibility code. The project documentation and package metadata describe these implementation and licensing details.

Quick Recap

SaleBestseller No. 2
The Unix Programming Environment (Prentice-Hall Software Series)
The Unix Programming Environment (Prentice-Hall Software Series)
The Unix Programming Environment (Prentice-Hall Software Series); Product Type: ABIS_BOOK; Pearson
$78.11
SaleBestseller No. 3
SaleBestseller No. 4

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.