In order to avoid the failure below with gcc-4.3.0, please do a simple bump to 0.10. g++ -I . -I /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src -I /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/gc/include -O2 -march=i686 -mtune=athlon-xp -msse -mmmx -pipe -ggdb3 -fPIC -c -o Synopsis/PTree/Node.o /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Node.cc In file included from /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Node.hh:14, from /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Node.cc:10: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static int Synopsis::PTree::Encoding::char_traits::compare(const unsigned char*, const unsigned char*, size_t)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:78: error: ‘memcmp’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static size_t Synopsis::PTree::Encoding::char_traits::length(const unsigned char*)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:79: error: ‘strlen’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static const unsigned char* Synopsis::PTree::Encoding::char_traits::find(const unsigned char*, size_t, const unsigned char&)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:81: error: ‘memchr’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static unsigned char* Synopsis::PTree::Encoding::char_traits::move(unsigned char*, const unsigned char*, size_t)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:83: error: ‘memmove’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static unsigned char* Synopsis::PTree::Encoding::char_traits::copy(unsigned char*, const unsigned char*, size_t)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:85: error: ‘memcpy’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In static member function ‘static unsigned char* Synopsis::PTree::Encoding::char_traits::assign(unsigned char*, size_t, unsigned char)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:87: error: ‘memset’ was not declared in this scope /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh: In constructor ‘Synopsis::PTree::Encoding::Encoding(const char*)’: /var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/src/Synopsis/PTree/Encoding.hh:102: error: ‘strlen’ was not declared in this scope make: *** [Synopsis/PTree/Node.o] Error 1 make: Leaving directory `/var/tmp/portage/dev-util/synopsis-0.9/work/synopsis-0.9/build/ctemp.linux-i686/src' error: command 'sh' failed with exit status 2 What would Jesus do? Reproducible: Always Steps to Reproduce:
Thanks for reporting. In Portage. *synopsis-0.10 (16 Apr 2008) 16 Apr 2008; Samuli Suominen <drac@gentoo.org> -synopsis-0.6.ebuild, -synopsis-0.8.ebuild, -synopsis-0.9.ebuild, +synopsis-0.10.ebuild: Version bump wrt #217958, thanks to Peter Alfredsen.