Brabosphere header Homepage University of Antwerp Structural Chemistry Group
Home | Download | Screenshots | Features | Compilation | Forums | Mailing list | Support | Bugs | Feature requests | Documentation | Changes | Roadmap | Links
 

Quick navigation menu:

Compilation and installation instructions

Currently a binary version of Brabosphere is provided only for a limited number of platforms. For most platforms, you will have to download the source code and compile it yourself. Compilation instructions can be found below and installation instructions a bit further down. These instructions are also bundled with the source code.

Compilation

Brabosphere relies on a number of libraries: Qt, OpenBabel and QextMDI. Although version 4 of the Qt library has been released, Brabosphere only compiles with the 3.2 and 3.3 series. Download details will be given in the respective sections. For the OpenBabel library, either version 1.100.2 or one of the new 2.x releases is required. The latest version of QextMDI (not maintained anymore) is version 2.0.2. Sources for both Windows and UNIX can be downloaded from the site.
Whereas the compilation procedure for Brabosphere and all libraries is similar under Linux, UNIX and MacOS operating systems, it is very different under Windows. The Qt and QextMDI libraries are mandatory for the compilation of Brabosphere itself, while CrdView only needs the Qt library. The OpenBabel library can be omitted from both programs, but that would severely limit the types of coordinate files that can be read and saved.

UNIX-like operating systems

Qt

The Qt library serves as the base for KDE, a well-known desktop environment in the Linux world. If you run a reasonably new version of Linux, it is highly probable that Qt is installed or can at least be installed easily using the standard package managers. When the version is correct, no compilation is needed. It is however possible that Qt was compiled without OpenGL support. In that case a local version of Qt has to be compiled anyway. When using a binary Qt-package, make sure the development packages are also installed (including the compatibility headers if they are mentioned separately!). This can be checked easily by typing 'qmake' at the command prompt. This executable is part of Qt, needed for the compilation of Brabosphere and should be in the path.

When no suitable binary version is available, the latest version of the Qt3 branch can be downloaded from Trolltech's FTP server: the X11 version and the MacOS version. Although I have absolutely no experience with the MacOS version, the procedure should be similar when run from the shell. Excellent information about supported platforms, supported compilers and platform issues can be found on the Trolltech website.

After unpacking the downloaded file, Qt has to be configured for building with configure -thread . To be sure OpenGL-support is enabled, first run it with configure -thread -verbose and check the output above the license agreement prompt. Then start configure again with the aforementioned thread option only. When that is finished a simple make should build the entire library without errors. This is a very long process and can be shortened by issuing make sub-src sub-tools instead. This only builds the required components for compiling Brabosphere.

QextMDI

The UNIX version of QextMDI can be downloaded here. It needs the Qt library for compilation. Although a configure script is present, it is only suited for compilation using Qt2 and not Qt3. A simple solution is to go into the qextmdi subdirectory and to type qmake "CONFIG+=release" qextmdi.pro followed by make. Compilation should proceed swiftly without errors. Like Qt itself, QextMDI does not need to be installed. You will, however, need to make the resulting DLL available by copying it into /usr/local/lib, for example.

OpenBabel

For OpenBabel the standard configure && make && make install is needed, regardless of the version used. Be sure to remember where this library will be installed.

Brabosphere

When Qt, QextMDI and OpenBabel are compiled, Brabosphere can finally be compiled. Before compilation can be started, the file brabosphere.pri has to be edited. First of all the directories containing the QextMDI and OpenBabel installations should be updated. These locations can be given as absolute directories or relative ones. For the latter, an extra '../' has to be added in order to compile without errors. More options can be changed but they don't normally have to be adapted. You can make a choice wether or not to use the OpenBabel library and if so, what version (preferably version 2.x). Then there's a choice whether the QextMDI library is to be used as a DLL (default) or compiled in statically. Then a choice can be made between building a retail version or a debug version. Finally a setting is available for compilation with the Microsoft Visual C++ Toolkit in combination with OpenBabel 2.x.

In case you don't want to compile CrdView, the file brabosphere.pro in the main directory can be changed.

Now Brabosphere is ready for building. A qmake followed by make should proceed without errors. The warnings you see should only arise from the QextMDI/OpenBabel/system header files. The binaries can be found in the 'bin' subdirectory.

Windows

Compilation under Windows is hindered by the fact that you need Qt3 for Windows. This is only available as a commercial version from Trolltech. There exists one non-commercial version distributed with the book 'C++ GUI Programming with Qt3' of Blanchet and Summerfield. As it is a non-commercial version, it has a number of restrictions not found in the commercial and GPL editions. Although Qt4 is released under the GPL for Windows, it cannot be used for compilation of Qt3 code. The following sections explain compilation procedures for the non-commercial edition with a number of compilers.

Microsoft Visual C++/Studio 2002 and 2003

QextMDI

The Windows version of QextMDI can be downloaded here. Compilation proceeds identical to the UNIX version: in the qextmdi subdirectory type qmake "CONFIG+=release" qextmdi.pro followed by nmake.

NOTE: In case version 2003 (7.1) of the compiler is used, the file src\qextmdichildfrmcaption.cpp has to be changed at line 36 from #include <iostream.h> to #include <iostream>.

OpenBabel 1.100.2

Although the OpenBabel source tree contains project files for Visual C++ 6.0, they cannot be read by the more recent versions of the compiler IDE. In order to facilitate the compilation process, two files are provided in the openbabel/openbabel 1.100.2 subdirectory of the Brabosphere source tree. The files babelconfig.h and openbabel.pro need to be copied to the OpenBabel directory and then the library can be compiled by issueing qmake followed by nmake.

OpenBabel 2.x

Compilation of the new version is a bit more involved as it depends on a few libraries itself. First the iconv and libxml2 libraries have to be installed (binary versions can be downloaded from Zlatkovic or XMLSoft). Then openbabel/openbabel 2.x/openbabel.pro has to be copied to the OpenBabel directory. This file then has to be updated with the locations of the iconv and libxml2 libraries. Also the subdirectory windows has to be cleaned up by removing (or moving to a newly made directory) the files iconv.h, libxml2.lib and the libxml subdirectory. Afterwards qmake can be issued followed by nmake. The file openbabel.dll will then be built in the lib subdirectory.

Brabosphere

The procedure for compiling Brabosphere under Windows is identical to the one for UNIX.

Microsoft Visual C++ Toolkit 2003

This toolkit is freely downloadable from Microsoft and is the only way to compile Brabosphere under Windows using nothing but free tools. As the non-commercial edition of Qt3 was built nor configured for use with this toolkit, compilation is a bit more involved. This is the procedure currently in use for the binary distribution of Brabosphere.

Microsoft tools

Apart from the toolkit itself (available here), a number of other tools have to be downloaded and installed. First of all you need the Windows 2003 R2 Platform SDK (WARNING: be sure to download the web install with Internet Explorer and keep its window open during the install. Otherwise you'll get an error 1329) to get access to nmake.exe and rc.exe. For this only the Microsoft Windows Core SDK Tools and Build Environment (x86 32-bit only) has to be installed. The file cvtres.exe is also needed and can be downloaded here. All executables need to be put in the PATH so they are accessible by the toolkit's linker. The easiest way to do this is by opening a command prompt and running $(TOOLKITDIR)\vcvars32.bat and $(SDKDIR)\Setup\SetEnvLaunchWinXP32Retail.Cmd.

Qt

The file $(QTDIR)\mkspecs\win32-msvc.net\qmake.conf has to be replaced by the one provided in the qt subdirectory of the Brabosphere source tree. Then all occurences of delayimp.lib have to be removed from the file $(QTDIR)\lib\qtmain.prl (With QTDIR pointing to the Qt base directory). Make sure that the Qt-related environment variables are updated by logging off and on again.

QextMDI and OpenBabel

The complation procedure for QextMDI and OpenBabel is identical to the one for the regular Visual C++ compiler.

Brabosphere

One additional change has to be made to the file brabosphere.pri with respect to the compilation settings used for the regular Visual C++ compilers. A line has to be uncommented only if OpenBabel is used and compiled in as a DLL (2.x series only). It is the last of the user changeable entries in the file. The rest of the procedure is standard as explained for the UNIX version. As noted in the file, Brabosphere has to be compiled in release mode for this to work.

Borland C++ compiler

Although this compiler is supported by Qt and a version of the non-commercial edition is available for it, I haven't tried it yet. Reports of succes with this compiler (and compilation instructions) are very welcome.

Development code from SVN

All released versions, but more importantly the latest development version, can be downloaded from the Subversion repository at Sourceforge. The development version can be checked out using the following syntax:

svn co https://svn.sourceforge.net/svnroot/brabosphere/trunk/brabosphere <dir>

Other releases can be found in the branches/brabosphere-X.Y subdirectory. Details about working with Subversion can be found at the Subversion website. Before compilation (per instructions given above for different platforms) can be started, the file brabosphere.pri.in has to be copied to brabosphere.pri.

Installation

UNIX-like operating systems

If a binary version of Brabosphere is available for your platform, installation should be evident. If you compiled everything yourself, the Qt, QextMDI and OpenBabel shared objects (.so's) should be made available somewhere the dynamic linker (ld) can find them. If you want to use the provided basis sets (Not provided with the Brabosphere source code so needed to download separately), they will have to be copied somewhere and its base directory should be updated in Brabosphere's preferences. NOTE: this basis set directory cannot have any spaces in it!

Windows

Most people will install the binary distribution so installation should be easy using the provided installer. When automatic installation is chosen, Brabosphere and CrdView will be installed in the system's Program Files directory under the University of Antwerp\Brabosphere directory. The basis set files will go to C:\Basissets (cannot have any spaces in it). Appropriate startmenu entries will be made and all coordinate file types that can be read and are not associated with any program, will be associated with CrdView. When choosing the manual installation, all these settings can be tweaked at will. Uninstalling the application can be done through the start menu or the Add/Remove Programs entry of the Control Panel.

When building from source on Windows, the following files have to be copied into the same directory as brabosphere.exe and crdview.exe: iconv.dll, libinchi.dll, libxml2.dll, openbabel.dll, qextmdi.dll, qt-mtXXX.dll and zlib1.dll (which can be reduced to qt-mtXXX.dll only if not using OpenBabel and compiling QextMDI statically).

 
 
 
 

This website is W3C validated and tested in recent versions of Firefox, Internet Explorer, Opera and Konqueror. Firewalls might limit functionality.
Brabosphere © 2002-2006

Valid XHTML 1.0 Transitional Open Source Initiative Logo SourceForge Logo
 
Footer