= Compiling BOINC client software = 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 [VirtualMachines 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 }}} [BuildSystem See details] 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 [http://boinc.berkeley.edu/trac/wiki/SoftwarePrereqsUnix prerequisites] * [SourceCode Download current source code] * [BuildSystem 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 == Windows == Use Microsoft Visual Studio 2005. Or download and install [http://msdn.microsoft.com/vstudio/express/downloads/ Visual C++ 2005] (part of Visual Studio 2005 Express). NOTE: When using Visual Studio 2005 Express, you will also need to download and install the Windows Platform SDK. See this [http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/ article] for further details. Install version 2.8.4 of [http://www.wxwidgets.org/ WxWidgets]: * Download and install the !WxWidgets source according to instructions on the web site. * In Settings/Control Panel/System, select Advanced; click Environment Variables. Under 'User variables' click New. Create a variable named 'wxwin' with value 'c:\wx' (or wherever you installed it). Then restart Visual Studio. * Build !WxWidgets. See [http://www.wxwidgets.org/wiki/index.php/Compiling_WxWidgets Compiling WxWidgets] for details. * When done, go File->Close Solution. * Then go File->Open Solution->%drive%://boinc/win_build/boinc.sln and press Open. * Set up Visual Studio to use the correct platform. From the drop-down menu choose either Win32 (for 32 bit platforms) or x64 (for 64 bit platforms) and choose to make it a Release version. * Go to the Build menu, Build Solution. All files will be built to %drive%://boinc/win_build/Build/Win32/Release (or Build/x64/Release for 64 bit versions). Versions compiled with Visual C++ 2005 Express use the optimizing compiler. Benchmarks are the same as on versions released by Berkeley. TODO: instructions for creating an installer with Installshield X. == Mac OS X == Instructions for building the BOINC client on Mac OS X are [MacBuild here].