Compiling

These instructions explain how to compile VLFeat on your own. This can be useful to customize or contribute to VLFeat, but it is otherwise not necessary (use the binary package instead).

For UNIX based platforms (Mac OS X and Linux), the library bundles a GNU makefile (Makefile). The makefile tries to auto-detect the environment and automatically configure itself. In most cases, typing make is all it is required to compile everything. If this does not work, please edit the makefile and make the necessary adjustment to the flags.

For Windows, the library bundles a NMake makefile (Makefile.mak). In order to use it, you must open Makefile.mak and adjust the values of configuration variables to match your setup. Once you have done that, start the Visual Studio Command Prompt and type nmake /f Makefile.mak.

Note: For Windows you can also just compile the mex files. Start with our binary distribution.

Windows: Troubleshooting common problems:

syntax error: '=' unexpected:

Use nmake /f Makefile.mak. Without /f, nmake will default to the wrong makefile.

'long' followed by 'long' is illegal:

This error is usually caused by attempting to compile outside of the Visual Studio Command Prompt.