j'essaie de compiler le paquetage Eliot qui est disponible sur AUR (jeu de Scrabble) mais j'ai une erreur sur les deux versions :
les dépendances du logiciel (arabica/libconfig/qt4) sont à jour
Je n'arrive pas à contacter le mainteneur du paquet.
la version 2.1 :
Code : Tout sélectionner
search.o -MD -MP -MF $depbase.Tpo -c -o dic_search.o dic_search.cpp &&\
mv -f $depbase.Tpo $depbase.Po
dic_search.cpp: Dans la fonction « void initLetterLists(const Dictionary&, searchRegExpLists&) »:
dic_search.cpp:377:11: attention: « void* memset(void*, int, size_t) » effacement d'un objet de type « struct searchRegExpLists » sans affectation par copie triviale; use assignment or value-initialization instead [-Wclass-memaccess]
377 | memset(&iList, 0, sizeof(iList));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
Dans le fichier inclus depuis dic_search.cpp:32:
regexp.h:132:8: note: « struct searchRegExpLists » déclaré ici
132 | struct searchRegExpLists
| ^~~~~~~~~~~~~~~~~
depbase=`echo csv_helper.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -I.. -I../intl -I../intl -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -Wextra -MT csv_helper.o -MD -MP -MF $depbase.Tpo -c -o csv_helper.o csv_helper.cpp &&\
mv -f $depbase.Tpo $depbase.Po
csv_helper.cpp: Dans la fonction membre statique « static std::vector<std::vector<std::__cxx11::basic_string<char> > > CsvHelper::readStream(std::istream&) »:
csv_helper.cpp:49:19: erreur: impossible de convertir « std::getline<char, char_traits<char>, allocator<char> >((* & input), line) » de « std::basic_istream<char> » vers « bool »
49 | while (getline(input, line))
| ~~~~~~~^~~~~~~~~~~~~
| |
| std::basic_istream<char>
Dans le fichier inclus depuis /usr/include/c++/12.2.0/string:53,
depuis /usr/include/c++/12.2.0/bits/locale_classes.h:40,
depuis /usr/include/c++/12.2.0/bits/ios_base.h:41,
depuis /usr/include/c++/12.2.0/streambuf:41,
depuis /usr/include/c++/12.2.0/bits/streambuf_iterator.h:35,
depuis /usr/include/c++/12.2.0/iterator:66,
depuis /usr/include/boost/iterator/iterator_traits.hpp:10,
depuis /usr/include/boost/range/mutable_iterator.hpp:23,
depuis /usr/include/boost/range/iterator.hpp:20,
depuis /usr/include/boost/range/end.hpp:21,
depuis /usr/include/boost/foreach.hpp:80,
depuis csv_helper.cpp:21:
/usr/include/c++/12.2.0/bits/basic_string.h: Dans l'instanciation de « std::basic_istream<_CharT, _Traits>& std::getline(basic_istream<_CharT, _Traits>&, __cxx11::basic_string<_CharT, _Traits, _Allocator>&) [with _CharT = char; _Traits = char_traits<char>; _Alloc = allocator<char>] » :
csv_helper.cpp:49:19: requis depuis ici
/usr/include/c++/12.2.0/bits/basic_string.h:3925:45: erreur: utilisation invalide du type incomplet « class std::basic_istream<char> »
3925 | { return std::getline(__is, __str, __is.widen('\n')); }
| ~~~~~^~~~~
Dans le fichier inclus depuis /usr/include/c++/12.2.0/iterator:64:
/usr/include/c++/12.2.0/iosfwd:83:11: note: déclaration de « class std::basic_istream<char> »
83 | class basic_istream;
| ^~~~~~~~~~~~~
make[2]: *** [Makefile:479 : csv_helper.o] Erreur 1
make[2] : on quitte le répertoire « /home/arnaud/tempo/tmp/eliot/src/eliot-2.1/dic »
make[1]: *** [Makefile:394 : all-recursive] Erreur 1
make[1] : on quitte le répertoire « /home/arnaud/tempo/tmp/eliot/src/eliot-2.1 »
make: *** [Makefile:330 : all] Erreur 2
==> ERREUR : Une erreur s’est produite dans build().
Abandon…
la version 2.2 :
Code : Tout sélectionner
make[2] : on entre dans le répertoire « /home/arnaud/tempo/tmp/eliot/2.2/eliot/src/eliot-2.2/utils »
depbase=`echo curses_intf.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/share/locale\" -I../dic -I../game -I../intl -I../intl -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -Wall -Wextra -fPIC -MT curses_intf.o -MD -MP -MF $depbase.Tpo -c -o curses_intf.o curses_intf.cpp &&\
mv -f $depbase.Tpo $depbase.Po
curses_intf.cpp: Dans la fonction membre « void CursesIntf::drawStatus(WINDOW*, const std::string&, bool) »:
curses_intf.cpp:213:14: erreur: le format n'est pas une chaîne littérale et il n'y a pas d'arguments de format [-Werror=format-security]
213 | mvwprintw(win, y, x, truncOrPad(iMessage, cols).c_str());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
curses_intf.cpp: Dans la fonction membre « void CursesIntf::drawBoard(WINDOW*, int, int) const »:
curses_intf.cpp:268:30: erreur: le format n'est pas une chaîne littérale et il n'y a pas d'arguments de format [-Werror=format-security]
268 | mvwprintw(win, y + row + 1, x + 3 * col + 2 + offset, lfw(chr).c_str());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
curses_intf.cpp:273:30: erreur: le format n'est pas une chaîne littérale et il n'y a pas d'arguments de format [-Werror=format-security]
273 | mvwprintw(win, y + row + 1, x + 3 * col + 2 + offset, lfw(chr).c_str());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
curses_intf.cpp: Dans la fonction membre « bool CursesIntf::readString(WINDOW*, int, int, int, std::wstring&, unsigned int) »:
curses_intf.cpp:751:22: erreur: le format n'est pas une chaîne littérale et il n'y a pas d'arguments de format [-Werror=format-security]
751 | mvwprintw(win, y, x, string(len, ' ').c_str());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
curses_intf.cpp: Dans la fonction membre « void CursesIntf::redraw(WINDOW*) »:
curses_intf.cpp:1129:14: erreur: le format n'est pas une chaîne littérale et il n'y a pas d'arguments de format [-Werror=format-security]
1129 | mvwprintw(win, 0, 0, truncOrPad(title, cols).c_str());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1plus : certains avertissements sont traités comme des erreurs
make[2]: *** [Makefile:524 : curses_intf.o] Erreur 1
make[2] : on quitte le répertoire « /home/arnaud/tempo/tmp/eliot/2.2/eliot/src/eliot-2.2/utils »
make[1]: *** [Makefile:476 : all-recursive] Erreur 1
make[1] : on quitte le répertoire « /home/arnaud/tempo/tmp/eliot/2.2/eliot/src/eliot-2.2 »
make: *** [Makefile:413 : all] Erreur 2
==> ERREUR : Une erreur s’est produite dans build().
Abandon…