Open Wermorl opened 2 days ago
(different machine than the previous issue)
make fails with:
root@cloud ~/fts-xapian #make make all-recursive make[1]: Entering directory '/root/fts-xapian' Making all in src make[2]: Entering directory '/root/fts-xapian/src' /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -O2 -I/usr/include/dovecot -std=gnu++20 -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -O2 -I/usr/include/dovecot -std=gnu++20 -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp -fPIC -DPIC -o .libs/fts-backend-xapian.o g++: error: unrecognized command line option ‘-std=gnu++20’; did you mean ‘-std=gnu++2a’? make[2]: *** [Makefile:582: fts-backend-xapian.lo] Error 1 make[2]: Leaving directory '/root/fts-xapian/src' make[1]: *** [Makefile:492: all-recursive] Error 1 make[1]: Leaving directory '/root/fts-xapian' make: *** [Makefile:414: all] Error 2
I replaced as suggested gnu++20 with gnu++2a in
gnu++20
gnu++2a
root@cloud ~/fts-xapian # grep -r gnu++20 * src/Makefile:AM_CXXFLAGS = -std=gnu++20 src/Makefile.am:AM_CXXFLAGS = -std=gnu++20 src/Makefile.in:AM_CXXFLAGS = -std=gnu++20
it now builds.
System is an Ubuntu Folcal.
root@cloud ~/fts-xapian # make make all-recursive make[1]: Entering directory '/root/fts-xapian' Making all in src make[2]: Entering directory '/root/fts-xapian/src' cd .. && /bin/bash ./config.status src/Makefile depfiles config.status: creating src/Makefile config.status: executing depfiles commands /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -O2 -I/usr/include/dovecot -std=gnu++2a -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c -o fts-backend-xapian.lo fts-backend-xapian.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -O2 -I/usr/include/dovecot -std=gnu++2a -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp -fPIC -DPIC -o .libs/fts-backend-xapian.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -O2 -I/usr/include/dovecot -std=gnu++2a -g -O2 -MT fts-backend-xapian.lo -MD -MP -MF .deps/fts-backend-xapian.Tpo -c fts-backend-xapian.cpp -o fts-backend-xapian.o >/dev/null 2>&1 mv -f .deps/fts-backend-xapian.Tpo .deps/fts-backend-xapian.Plo /bin/bash ../libtool --tag=CXX --mode=link g++ -std=gnu++2a -g -O2 -module -avoid-version -o lib21_fts_xapian_plugin.la -rpath /usr/lib/dovecot/modules fts-xapian-plugin.lo fts-backend-xapian.lo -L/usr/lib/x86_64-linux-gnu -lxapian -licuio -licui18n -licuuc -licudata -lsqlite3 libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/9/crtbeginS.o .libs/fts-xapian-plugin.o .libs/fts-backend-xapian.o -L/usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/libxapian.so -licuio -licui18n -licuuc -licudata /usr/lib/x86_64-linux-gnu/libsqlite3.so -L/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/9/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/9/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crtn.o -g -O2 -Wl,-soname -Wl,lib21_fts_xapian_plugin.so -o .libs/lib21_fts_xapian_plugin.so libtool: link: ar cr .libs/lib21_fts_xapian_plugin.a fts-xapian-plugin.o fts-backend-xapian.o libtool: link: ranlib .libs/lib21_fts_xapian_plugin.a libtool: link: ( cd ".libs" && rm -f "lib21_fts_xapian_plugin.la" && ln -s "../lib21_fts_xapian_plugin.la" "lib21_fts_xapian_plugin.la" ) make[2]: Leaving directory '/root/fts-xapian/src' make[2]: Entering directory '/root/fts-xapian' make[2]: Leaving directory '/root/fts-xapian' make[1]: Leaving directory '/root/fts-xapian'
gnu++20 is the correct value
if your system is old, most natably using n old Icu library, you can use gnu++11
(different machine than the previous issue)
make fails with:
I replaced as suggested
gnu++20
withgnu++2a
init now builds.
System is an Ubuntu Folcal.