[mlpack] why is ARMA_64BIT_WORD disabled ?
Julien Dorval
dorvaljulien at gmail.com
Fri Apr 24 11:17:50 EDT 2015
Hello everyone,
I am completely new in the MLPACK community, I'm trying to get it to
work for the moment, I'm particularly interested in the EMST. I tried a
bit by myself, but I'd rather ask competent people instead of breaking
things on my own. I managed to get cmake what it wanted, but the
compilation stops at:
dorval at zoidberg:~/peoples_codes/mlpack/mlpack-master/build: make
[ 0%] Updating arma_config.hpp (if necessary)
[ 0%] Built target mlpack_arma_config
Moving header files to include/mlpack/
[ 0%] Built target mlpack_headers
[ 1%] Building CXX object
src/mlpack/CMakeFiles/mlpack.dir/core/dists/discrete_distribution.cpp.o
In file included from /usr/include/armadillo:48:0,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core/arma_extend/arma_extend.hpp:29,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/prereqs.hpp:50,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core.hpp:150,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.hpp:11,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.cpp:7:
_/usr/include/armadillo_bits/compiler_setup.hpp:191:111: note:
#pragma message: WARNING: compiler is in C++11 mode, but it has
incomplete support for C++11 features;__
__/usr/include/armadillo_bits/compiler_setup.hpp:192:86: note:
#pragma message: WARNING: if something breaks, you get to keep all
the pieces__
__/usr/include/armadillo_bits/compiler_setup.hpp:193:93: note:
#pragma message: WARNING: To forcefully prevent Armadillo from using
C++11 features,__
__/usr/include/armadillo_bits/compiler_setup.hpp:194:90: note:
#pragma message: WARNING: #define ARMA_DONT_USE_CXX11 before
#include <armadillo>_
In file included from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core.hpp:167:0,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.hpp:11,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.cpp:7:
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core/dists/gaussian_distribution.hpp:34:42:
_erreur: both ‘const’ and ‘constexpr’ cannot be used here__
_make[2]: ***
[src/mlpack/CMakeFiles/mlpack.dir/core/dists/discrete_distribution.cpp.o]
Erreur 1
make[1]: *** [src/mlpack/CMakeFiles/mlpack.dir/all] Erreur 2
make: *** [all] Erreur 2
Ok, so I tried to solve this myself by adding
#define ARMA_DONT_USE_CXX11
before :
#include <armadillo>
In build/include/mlpack/core/arma_extend/arma_extend.hpp and
src/mlpack/core/arma_extend/arma_extend.hpp
Now the compilation does this:
dorval at zoidberg:~/peoples_codes/mlpack/mlpack-master/build: make
Scanning dependencies of target mlpack_headers
Moving header files to include/mlpack/
[ 0%] Built target mlpack_headers
Scanning dependencies of target mlpack_arma_config
[ 0%] Updating arma_config.hpp (if necessary)
[ 0%] Built target mlpack_arma_config
Scanning dependencies of target mlpack
[ 3%] Building CXX object
src/mlpack/CMakeFiles/mlpack.dir/core/dists/discrete_distribution.cpp.o
In file included from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/prereqs.hpp:54:0,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core.hpp:150,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.hpp:11,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.cpp:7:
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core/util/arma_config_check.hpp:26:21:
note: #pragma message: mlpack was compiled with ARMA_64BIT_WORD, but
you are compiling wit
hout ARMA_64BIT_WORD. This will almost certainly cause irreparable
disaster. Either enable ARMA_64BIT_WORD in your application which
is using mlpack, or, recompile mlpack against a version of Arma
dillo which has ARMA_64BIT_WORD disabled.
In file included from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core.hpp:167:0,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.hpp:11,
from
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/core/dists/discrete_distribution.cpp:7:
/home/dorval/peoples_codes/mlpack/mlpack-master/src/mlpack/../mlpack/core/dists/gaussian_distribution.hpp:34:42:
erreur: both ‘const’ and ‘constexpr’ cannot be used here
make[3]: ***
[src/mlpack/CMakeFiles/mlpack.dir/core/dists/discrete_distribution.cpp.o]
Erreur 1
make[2]: *** [src/mlpack/CMakeFiles/mlpack.dir/all] Erreur 2
make[1]: *** [src/mlpack/methods/emst/CMakeFiles/emst.dir/rule] Erreur 2
make: *** [emst] Erreur 2
I'm using armadillo 5.0 which I understand has ARMA_64BIT_WORD enabled
by default. Why wasn't MLPACK compiled with ARMA_64BIT_WORD ? Am I not
actually compiling mlpack right now ?
Any help would be greatly appreciated, thanks !
Cheers,
--
Julien Dorval
---------------------------------------
Doctorant 2e année en Astrophysique
Observatoire Astronomique de Strasbourg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.cc.gatech.edu/pipermail/mlpack/attachments/20150424/72d262fc/attachment-0002.html>
More information about the mlpack
mailing list