#include <iostream>
#include "H5Cpp.h"


int main(void)
{
unsigned maj, min, rel;

try {
    H5::H5Library::open();
    H5::H5Library::getLibVersion(maj, min, rel);
    std::cout << "C++ HDF5 version " << maj << "." << min << "." << rel << std::endl;
    H5::H5Library::close();
    return EXIT_SUCCESS;
} catch (H5::LibraryIException &e) {
    std::cerr << "Exception caught from HDF5: " << e.getDetailMsg() << std::endl;
    return EXIT_FAILURE;
}
}
