|
From: Mailing l. u. f. U. C. a. U. <kal...@li...> - 2013-07-25 10:35:29
|
Hi, kaldi developers
I tried to compile trunk with icc/icpc.
But I found only one line incompatible to icpc.
Maybe you guys want to fix it.
Here's the kaldi code failed in icpc compiling.
icpc -m64 -msse -msse2 -Wall -I.. -DKALDI_DOUBLEPRECISION=0
-DHAVE_POSIX_MEMALIGN -Wno-sign-compare -Winit-self -DHAVE_EXECINFO_H=1
-rdynamic -DHAVE_CXXABI_H -DHAVE_MKL
-I/opt/intel/composer_xe_2013.1.117/mkl/include
-I/data/sykang/work/asr/kaldi/trunk/tools/openfst/include -Wno-sign-compare
-O3 -DNDEBUG -DHAVE_CUDA -I/usr/local/cuda/include -c -o push-lattice.o
push-lattice.cc
push-lattice.cc(131): error: non-integral operation not allowed in nontype
template argument KALDI_COMPILE_TIME_ASSERT(static_cast<StateId>(-1) <
static_cast<StateId>(0) &&
^
push-lattice.cc(131): error: class
"KaldiCompileTimeAssert<<error-constant>>" has no member "Check"
KALDI_COMPILE_TIME_ASSERT(static_cast<StateId>(-1) <
static_cast<StateId>(0) &&
^
compilation aborted for push-lattice.cc (code 2)
It seems the following line can only be compiled by g++.
KALDI_COMPILE_TIME_ASSERT(true && "string");
I also posted a demo code on intel's dev forum.
http://software.intel.com/en-us/forums/topic/402465
kangshiyin
|