# QuickFIX Dependencies

- Required Dependencies
- Optional Dependencies

## Required Dependencies

Below is a list of tools that QuickFIX is dependent on for various uses. The uses are split into Run, Build, and Test catagories. These respectively refer to what is necessary to run a compiled QuickFIX application, what is required to compile QuickFIX from the source, and the tools needed to use the automated testing framework.

The Run category details what might be the setup of a deployment machine. The Build category might be the setup of a development machine that uses the QuickFIX library. All three should be installed for a developer intent on modifying the QuickFIX library code itself. The testing framework, however, should be useful in any configuration.

Windows | Run | MSXML3 or libxml2 | Build | Microsoft Visual C++ MSXML3 or libxml2 | Test | Ruby RubyUnit
Linux | Run | glibc libxml2 | Build | gcc gcc-c++ glibc-devel libxml2-devel gnu make sstream | Test | Ruby RubyUnit
Solaris | Run | glibc libxml2 | Build | gcc or SunPRO gcc-c++ glibc-devel libxml2-devel gnu make sstream | Test | Ruby RubyUnit
FreeBSD | Run | libxml2 | Build | libxml2 | Test | Ruby RubyUnit
Mac OS X | Run | Max OS X 10.3 (Panther) | Build | Xcode Tools | Test |

## Optional Dependencies

In addition to the required dependencies listed above, there are some dependencies if you would like to take advantage of additional features. QuickFIX supports the following: MySQL MSSQL PostgreSQL STLport