How to compile your own BOINC version for Linux/Unix?

From BOINC Wiki
Jump to: navigation, search

The BOINC client software includes:

* The core client
* The BOINC Manager
* boinc_cmd (Unix/Linux only)
* The BOINC screensaver (Windows and Mac only)


Linux/x86

If you want to build the client software for local use on your machine only, it is enough to simply build it using

./_autosetup
./configure --disable-server --enable-client CXXFLAGS="-O3 -funroll-loops -fforce-addr -ffast-math"
make

If instead you intend to build portable binaries of the client software that should run on a wide variety of GNU/Linux platforms, it is recommended to build the client software using a virtual machine (e.g. running under Microsoft Virtual PC, download the Compatibility virtual machine image).

In this case you should build using

./_autosetup
./configure --disable-server --enable-client-release --build=i686-pc-linux-gnu \
   CXXFLAGS="-O3 -funroll-loops -fforce-addr -ffast-math"
make

See details of the build system.

The result (in the sea/ directory) will be a self-extracting archive (boinc_x.y.z_i686-pc-linux-gnu.sh) containing the BOINC client software.

Other Unix

* Download and install prerequisites
* Download current source code
* Configure (with --disable_server) and make

The result (in the sea/ directory) will be a self-extracting archive (boinc_x.y.z_PLATFORM.sh) containing the BOINC client software. If you have old versions of libraries (curl, openssl etc.) in /usr/lib, and newer versions somewhere else (like /usr/local/lib) you must tell the linker where to find the newer versions:

./configure LDFLAGS=-L/usr/local/lib

Here is the list of packages that are needed to compile the BOINC graphics libs on Debian (the same packages should also be available on Ubuntu):

freeglut3-dev libsm-dev libice-dev libxmu-dev libxi-dev libx11-dev libjpeg62-dev


Original writer Original FAQ Date
Jorden 219 03-Jul-2007