On Sun, May 20, 2018 at 12:20:05PM +0500, Andrey Rahmatullin wrote: > On Sun, May 20, 2018 at 09:05:48AM +0200, Andreas Tille wrote: > > cd /build/prime-phylo-1.0.11/obj-x86_64-linux-gnu/src/cxx/libraries/prime > > && /usr/bin/c++ -DONLY_ONE_TIMESAMPLE -DPERTURBED_NODE > > -Dprime_phylo_EXPORTS > > -I/build/prime-phylo-1.0.11/obj-x86_64-linux-gnu/src/cxx/libraries/prime > > -I/build/prime-phylo-1.0.11/src/cxx/libraries/prime > > -I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi > > -I/usr/lib/x86_64-linux-gnu/openmpi/include -I/usr/ > > lib/x86_64-linux-gnu/openmpi/include/ompi/mpi/cxx -I/usr/include/libxml2 > > -I/build/prime-phylo-1.0.11/src/cxx/libraries > > -I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/ompi/mpi/cxx > > -I/usr/lib/openmpi/include/openmpi/ompi/mpi/cxx -g -O2 > > -fdebug-prefix-map=/build/prime-phylo-1.0.11=. -fstack-protector-strong > > -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 - > > Wreorder -Wall -fexceptions -g -fPIC -std=gnu++98 -o > > CMakeFiles/prime-phylo.dir/TreeInputOutput.cc.o -c > > /build/prime-phylo-1.0.11/src/cxx/libraries/prime/TreeInputOutput.cc > > > /usr/include/unicode/umachine.h:347:13: error: 'char16_t' does not name a > > type; did you mean 'wchar_t'? > ICU since 59 requires C++11 while your software uses -std=gnu++98.
Otherwise you can just define it. See e.g. https://cgit.freedesktop.org/libreoffice/core/diff/configure.ac?id=fabad007c60958f2ff87e8f636ff6a798ad1f963 +if test "$ICU_MAJOR" -ge "59"; then + # As of ICU 59 it defaults to typedef char16_t UChar; which is available + # with -std=c++11 but not all external libraries can be built with that, + # for those use a bit-compatible typedef uint16_t UChar; see + # icu/source/common/unicode/umachine.h + ICU_UCHAR_TYPE="-DUCHAR_TYPE=uint16_t" +else + ICU_UCHAR_TYPE="" +fi (but yes, projects using -std=c++11 don't need it.) Regards, Rene