Frequently Asked Questions (FAQ)

Why does the news decoder produce html-pages with error messages under Linux?

The news decoder requires a zlib version >= 1.2.0 . Under Linux it is checked if is already available without checking the version. If an older version of zlib is on the library search path, for example a library shipped with Matlab, this error can occur. Delete the old library from the search path or replace them by a newer one, or change "make.m" in "src/textdecoding" to force compilation of zlib, in order to overcome this problem.

Using Matlab R12 there seems to be a memory leak and Diorama crashes with an "out of memory" message. How can this problem be solved?

It's a Matlab R12 memory leak in the matrix multiplication implementation. Solution:

Is it possible to build Diorama without MS Visual Studio under Windows?

All parts necessary to build Diorama are freely available. You need administrator rights to install the packets.

You need:

Microsoft Visual C++ 2005 Express Edition

Microsoft Platform SDK (Core SDK)

Microsoft .NET Framework Version 1.1 Redistributable Package

Microsoft .NET Framework SDK Version 1.1

DirectX 9.0 Complete Software Development Kit (SDK)

Install these packets according to the installation instructions. After that, you have to update some system variables. In the following it is assumed that the path chosen to install the packets in was "X:\path_to\" and the system disk identifier is "S:\"

The file "cvtres.exe" is installed into a system directory. I found it in
of the system disk. Look for the this file with the search function and add the path to your PATH variable. (Start > Settings > Control Panel > System > Advanced > Environment Variables on Win2k). Furthermore add
X:\path_to\Microsoft Visual C++ Toolkit 2003\bin;
X:\path_to\Microsoft SDK\Bin;
to your PATH variable.

X:\path_to\Microsoft SDK\include;
to your INCLUDE variable, or create it with these values.

The folder "Microsoft Visual Studio .NET 2003" is created in the program folder of the system disk, for example
S:\program files\Microsoft Visual Studio .NET 2003\
Add the following strings to your LIB variable, or create it with these values:
S:\program files\Microsoft Visual Studio .NET 2003\Vc7\lib

X:\path_to\Microsoft SDK\Lib;

In all these packets the import library "msvcprt.lib" for "msvcp71.dll" is missing and has to be created by hand. Copy "msvcprt.def" into
X:\path_to\Microsoft SDK\Lib
change to this folder with the command line and execute
link /lib /def:msvcprt.def /machine:x86
You can read how to create "msvcprt.def" at

Now you have to configure Matlab to use the correct compiler. On the Matlab prompt execute the following:
>> mex -setup
Answer the first question with 'n', choose the newest MS Compiler from list and answer the following questions with 'y'. Matlab tells you where the new "mexopts.bat" file is located. Open this file with a text editor and you will find a line like:
set MSVCDir=Y:\program files\Microsoft Visual Studio\VCxx
or similar. Change this line to
set MSVCDir=X:\path_to\Microsoft Visual C++ Toolkit 2003\
and save the file. (There may emerge some variables pointing to non-existent directories, but for our purposes these are not important, so don't care about that.)

Now everything is completely configured and you can install Diorama by typing
>> setup
on the Matlab prompt in the Diorama base directory.

Some packets are just needed for single libraries or header files. So you could also install one after the other and inspect the compiler error messages to see which libraries are actually needed. Maybe some libraries are already installed on your system.