welcome: please sign in
location: Downloads

OpenBUGS license

Please click here, License, before downloading OpenBUGS software

Release (3.2.3) of OpenBUGS is now available. Changes to the version 3.2.2 are documented in changes. Release (3.2.3) of OpenBUGS has been tested and compared to the WinBUGS 1.4.3 program (Test Results). The only difference with WinBUGS 1.4.3 was with the 'Shared' GeoBUGS example. The computational speed of OpenBUGS is comparable to WinBUGS (timing comparisons). To report problems, please register and use the BugTracker page.

User contributed code, including BRugs/R2OpenBUGS, is located at User Contributed Code.

Microsoft Windows Download

A setup program for OpenBUGS on Windows computers can be downloaded here: OpenBUGS323setup.exe.
The Windows program was tested on machines with the XP and Windows 8 operating systems, and produced the same results.

Macintosh Download

The Windows version of OpenBUGS has been successfully installed on Mac OS X (Intel) using WINE. The Windows installer currently produces an error message at shutdown, but appears to install the program successfully. Testing under WINE has been VERY limited so far.

The MAC binary version of R2OpenBUGS on CRAN (3.2-1.4) is out of date and will not work with OpenBUGS 3.2.2. For now, Mac users should use install.packages('R2OpenBUGS',type='source') to install the latest (3.2-2.1) version of R2OpenBUGS.

Linux Download

Source package

Should be usable on any x86 (PC) Linux platform. On 64 bit Linux, the necessary 32-bit C development packages are required. Compilation has been successful on 64-bit Ubuntu using the g++-multilib package, and on 64-bit Fedora using the glibc-devel package.

Download: OpenBUGS-3.2.3.tar.gz

To install this, unpack by typing

tar zxvf OpenBUGS-3.2.3.tar.gz
cd OpenBUGS-3.2.3

then compile and install by typing

sudo make install

The "sudo" is included since "make install" requires root (administrative) privileges by default. If you don't have administrative access, you can get around this by installing in a location other than /usr/local, for example /home/chris/usr :

./configure --prefix=/home/chris/usr
make install

OpenBUGS for Linux is a command-line program and there is no graphical user interface. Instructions for invoking OpenBUGS can be obtained by typing

man OpenBUGS

Linux binaries

Red Hat Enterprise Linux / CentOS 6 and 7 users can add the following repository to yum.


or by directly installing one of the following package files


Ubuntu/Debian binaries are available to download from


(note this is not an apt repository). Thanks to Paul Johnson for these.

What files come with the download?

The Microsoft Windows and Linux versions of OpenBUGS share the same code. They differ only in their interface coding and the linking methods used to create the executable code. The Linux version of the program does not come with a GUI, and it cannot produce GUI-dependent graphical displays. Results from the Windows and Linux versions of OpenBUGS have been compared for exact agreement on all of the examples distributed with OpenBUGS.


OpenBUGS.exe is a small executable that initiates the OpenBUGS GUI interface. Most of the code needed for execution is dynamically linked.

<multiple files>.ocf are contained in several sub-directories. These are dynamically-linked compiled code files (Component Pascal) that must be present in the same directory as OpenBUGS.exe and should not be changed or moved.

<multiple files>.odc are contained in several sub-directories. These files contain the source code corresponding to the .ocf files, and supporting material such as manuals, examples, and logos. They must be present in the same directory as OpenBUGS.exe and should not be changed or moved.

libOpenBUGS.dll is a Windows linked library containing the code from the <files>.ocf. The dll is not used when executing the OpenBUGS GUI. It is available for programmers to call OpenBUGS functions from other programs (e.g., BRugs in R).


$prefix/bin/OpenBUGS is a BASH shell script that can be used to execute OpenBUGS script commands from a file or terminal input.

$prefix/bin/OpenBUGSCli is a compiled C program (called by the OpenBUGS shell script) that controls the script command input and ASCII log output (to a file or screen) and calls the OpenBUGS functions needed to execute the OpenBUGS script commands.

$prefix/lib/libOpenBUGS.so is an ELF Linux shared object that contains the code from <files>.ocf. The code in the shared object is called by OpenBUGSCli. It is analogous to the Windows OpenBUGS.dll.

$prefix/share/doc/openbugs-$version A directory installed with the executable code containing HTML versions of the user manuals and examples,

By default, $prefix is /usr/local, and $version is the version number.

Older distributions of OpenBUGS included several different user interfaces, which were given different names, but all executed the same numerical code. The version with the most potential for confusion was the GUI interface, which was named "WinBUGS.exe". It has been replaced by "OpenBUGS.exe". The Linux version of the program was called linBUGS; the different components of the Linux distribution are now named OpenBUGS, and the version numbers on Linux match the Windows version numbers. The older distributions also contained a Windows program called "ClassicBUGS.exe". ClassicBUGS was designed as a command-line script interpreter with the same functionality as the Linux version of the program. "ClassicBUGS.exe" has been eliminated. Instructions in the "Scripts and Batch-Mode' section of the User Manual contain instructions for batch command-line script execution in Windows using OpenBUGS.exe.


Older versions of the program are archived here: Archive.

Downloads (last edited 2015-07-20 13:46:33 by ChrisJackson)