Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page describes how Met.3D can be compiled from its source code using conda under Linux. If you would like to simply use the software, please use the precompiled binary package instead. If you would like to use a specific branch, or change parts of the source code yourself, this page is for you.

System requirements

You require an OpenGL 4.3 (or higher) capable graphics card and an appropriate Linux driver to run Met.3D. The driver will most likely be a proprietary driver (we've only tested Nvidia so far); open-source drivers for Linux currently do not provide the required capabilities. Before you continue with the installation, make sure that graphics card and driver are installed. If everything is installed correctly, the glxinfo command should output something similar to (the important thing is the OpenGL core profile version > 4.3):

Code Block
# glxinfo | grep OpenGL

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX TITAN/PCIe/SSE2
OpenGL core profile version string: 4.4.0 NVIDIA 340.96
OpenGL core profile shading language version string: 4.40 NVIDIA via Cg compiler

Note: So far we've only been able to test Nvidia drivers. Met.3D uses an Nvidia-specific OpenGL extension that queries the available GPU memory. If you are using a different driver and get an error message stating "GPU memory limit: 0 kb" then your driver unfortunately won't work at the moment. However, since Met.3D is meant to be an open-source community project: If you are a programmer and would like to help resolve this issue, please let us know!


Our recommended approach to compile Met.3D from source and/or to set up a development environment under Linux is using conda. The conda system provides package management that is independent from your Linux system and safely keeps all packages in an environment. This way, everything you install for Met.3D will not interfere with your base system. Also, using conda is independent of your Linux distribution, hence the described approach should work with any Linux distribution and version.