LIBSVM and LIBLINEAR are two popular open source machine learning libraries, both developed at the National Taiwan University and both written in C++ though with a C API.
LIBSVM implements the sequential minimal optimization (SMO) algorithm for kernelized support vector machines (SVMs), supporting classification and regression.
[1] LIBLINEAR implements linear SVMs and logistic regression models trained using a coordinate descent algorithm.
[2] The SVM learning code from both libraries is often reused in other open source machine learning toolkits, including GATE, KNIME, Orange[3] and scikit-learn.
[4] Bindings and ports exist for programming languages such as Java, MATLAB, R, Julia, and Python.