Error de construcción de C ++ para un código simple usando las bibliotecas armadillo y hdf5

Soy bastante nuevo en C ++ y armadillo, y me quedo atascado con un error de construcción que se describe a continuación. Estoy tratando de probar el siguiente código simple para guardar una matriz de armadillo como archivo hdf5:

#include <iostream>
#include <armadillo>

using namespace std;
using namespace arma;

int main()
{
    mat A = randu<mat>(240,320);
    A.save("A.hdf5",hdf5_binary);

    return 0;
}

Al compilar, obtengo los siguientes errores:

/usr/include/armadillo_bits/hdf5_misc.hpp:131: undefined reference in « arma_H5T_NATIVE_DOUBLE »
/usr/include/armadillo_bits/hdf5_misc.hpp:131: undefined reference in « arma_H5Tcopy »
obj/Debug/main.o: in function « bool arma::diskio::save_hdf5_binary<double>   (arma::Mat<double> const&, std::string const&) »:
/usr/include/armadillo_bits/diskio_meat.hpp:1299: undefined reference in « arma_H5Eset_auto »
/usr/include/armadillo_bits/diskio_meat.hpp:1308: undefined reference in « arma::H5check_version(unsigned int, unsigned int, unsigned int) »
/usr/include/armadillo_bits/diskio_meat.hpp:1308: undefined reference in « arma_H5Fcreate »
/usr/include/armadillo_bits/diskio_meat.hpp:1315: undefined reference in « arma_H5Screate_simple »
/usr/include/armadillo_bits/diskio_meat.hpp:1324: undefined reference in « arma_H5Dcreate »
/usr/include/armadillo_bits/diskio_meat.hpp:1330: undefined reference in « arma_H5Dwrite »
/usr/include/armadillo_bits/diskio_meat.hpp:1333: undefined reference in « arma_H5Dclose »
/usr/include/armadillo_bits/diskio_meat.hpp:1334: undefined reference in « arma_H5Tclose »
/usr/include/armadillo_bits/diskio_meat.hpp:1335: undefined reference in « arma_H5Sclose »
/usr/include/armadillo_bits/diskio_meat.hpp:1336: undefined reference in « arma_H5Fclose »

La instrucción de compilación es la siguiente:

g++ -Wall -fexceptions -O2 -g -larmadillo -lhdf5 -c main.cpp -o main

Estoy trabajando con CodeBlocks en un sistema Linux Fedora 20. Tengo el paquete HDF5-devel y pude encontrar el hdf5.h en/usr/include/ También activé hdf5 en armadillo usando el#define ARMA_USE_HDF5 enconfig.hpp. Yo uso la última versión de armadillo (4.450) y gcc 4.8.3.

¿Me perdí un enlace? Para mí, agregar -larmadillo y -lhdf5 (como se dice en la guía del usuario de armadillo) debería ser suficiente. Cualquier pista ? Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta