User Tools

Site Tools


neuroelf_mex_files

NeuroElf MEX files

NeuroElf comes with pre-compiled MEX files for the following platforms:

  • Mac OSX (10.4 and higher, PowerPC, Intel 32 and 64 bit platforms)
  • Windows (32 and 64 bit platforms, 64-bit version compiled with VC++ Express 2008)
  • Linux (32bit generic and A64; 32-bit MEX files compiled on Ubuntu, 64-bit MEX files compiled on openSUSE 11.2 x86_64)
  • Octave MEX files for Windows (i686-pc-mingw32) and Intel-based Mac OSX (x86_64-apple, using 32-bit architecture)

Motivation

While NeuroElf comes with these bundled files, it sometimes is preferable to compile source code on the machine which it is running on (plus, if your type of system is not on the above list, you just need to have these MEX files compiled!)

Requirements

First, you need a Matlab-compatible compiler. And then, depending on your system, …

Linux/Unix/Solaris

For Linux/Unix/Solaris systems, GCC should do. Occasionally, you will get link error messages about incompatibilities between the libstdc++ files stored in Matlab's path (MATLABROOT/sys/os/OSTYPE/libstdc++.so.6.X.Y). In that case, simply rename those files and link the system-wide version (found in /usr/lib/libstdc++.so.6.X.Y) into this directory for Matlab to find them. Matlab might still issue warnings about the version of GCC, but the files produced should at least work on your very machine.

Mac OSX

The operating system does not come with a compiler (in most cases, at least), but the bundled software contain the XTools, which also contains the GCC compiler. Once this compiler is installed, compilation of MEX files should work fine.

Windows

For Windows, I personally prefer the freely available MicroSoft VC++ 2008 Express edition. Be aware that to compile 64-bit MEX files, you must also install the SDK for Windows 2008, see the solution provided by MathWorks.com (for newer versions of Windows, please follow these instructions).

Octave

For non-Mac systems, Octave should come with a bundled compiler (Windows) or, for Linux systems, is compiled from sources or the system definitely should have a compiler installed. If you wish to use NeuroElf under Octave and you run into problems getting the MEX files compiled, please get in touch under info (a) neuroelf (.) net.

neuroelf_mex_files.txt · Last modified: 2011/08/22 14:28 by jochen