When compiled with sys-apps/db-4.2 Klibido fails to create the db stuff upon starting the program with this output: user $ klibido Error opening non-transactional environment: Invalid argument Error opening versiondb Error puttting version: Invalid argument Alarm clock Reproducible: Always Steps to Reproduce: 1. emerge klibido 2. run the program klibido 3. choose okay when prompted with configuration data Actual Results: Output is shown and klibido crashes Expected Results: it shouldn't have crashed This problem will happen when the user has sys-libs/db-4.2 installed. The ebuild is hard-coded to use db-4.1. I can resolve the bug by hardcoding the ebuild to 4.2, but obviously that's not the correct fix. Unfortunately I don't know the proper way to fix this or if I have even found the root of the problem.
I just added 0.2.1.1 that dynamically passes the correct --with-extra-includes dpending on the latest version of sys-libs/db installed.
0.2.1.1 doesn't work for me: ====== /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h: In constructor `std::_Rb_tree_base<_Tp, _Alloc>::_Rb_tree_base(const typename std::_Rb_tree_alloc_base<_Tp, _Alloc, std::_Alloc_traits<_Tp,_Allocator>::_S_instanceless>::allocator_type&)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:579: error: `_M_header' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:579: error: there are no arguments to `_M_get_node' that depend on a template parameter, so a declaration of `_M_get_node' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h: In destructor `std::_Rb_tree_base<_Tp, _Alloc>::~_Rb_tree_base()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:580: error: `_M_header' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:580: error: there are no arguments to `_M_put_node' that depend on a template parameter, so a declaration of `_M_put_node' must be available make[2]: *** [binheader.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/basic_ios.h:44, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ios:51, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ostream:45, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/iterator:70, from /usr/qt/3/include/qvaluelist.h:48, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h: In constructor `std::numpunct_byname<_CharT>::numpunct_byname(const char*, size_t)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:696: error: there are no arguments to `_S_create_c_locale' that depend on a template parameter, so a declaration of `_S_create_c_locale' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:696: error: (if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:697: error: there are no arguments to `_M_initialize_numpunct' that depend on a template parameter, so a declaration of `_M_initialize_numpunct' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h: In destructor `virtual std::numpunct_byname<_CharT>::~numpunct_byname()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:703: error: there are no arguments to `_S_destroy_c_locale' that depend on a template parameter, so a declaration of `_S_destroy_c_locale' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h: In constructor `std::collate_byname<_CharT>::collate_byname(const char*, size_t)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1077: error: `_M_c_locale_collate' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1077: error: (Each undeclared identifier is reported only once for each function it appears in.) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1077: error: there are no arguments to `_S_destroy_c_locale' that depend on a template parameter, so a declaration of `_S_destroy_c_locale' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1078: error: there are no arguments to `_S_create_c_locale' that depend on a template parameter, so a declaration of `_S_create_c_locale' must be available In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/basic_ios.h:44, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ios:51, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ostream:45, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/iterator:70, from /usr/qt/3/include/qvaluelist.h:48, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h: In constructor `std::moneypunct_byname<_CharT, _Intl>::moneypunct_byname(const char*, size_t)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1660: error: there are no arguments to `_S_create_c_locale' that depend on a template parameter, so a declaration of `_S_create_c_locale' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1661: error: there are no arguments to `_M_initialize_moneypunct' that depend on a template parameter, so a declaration of `_M_initialize_moneypunct' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h: In destructor `virtual std::moneypunct_byname<_CharT, _Intl>::~moneypunct_byname()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1667: error: there are no arguments to `_S_destroy_c_locale' that depend on a template parameter, so a declaration of `_S_destroy_c_locale' must be available In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.h:1891, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/basic_ios.h:44, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ios:51, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ostream:45, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/iterator:70, from /usr/qt/3/include/qvaluelist.h:48, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/i686-pc-linux-gnu/bits/messages_members.h: In constructor `std::messages_byname<_CharT>::messages_byname(const char*, size_t)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/i686-pc-linux-gnu/bits/messages_members.h:79: error: `_M_c_locale_messages' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/i686-pc-linux-gnu/bits/messages_members.h:79: error: there are no arguments to `_S_destroy_c_locale' that depend on a template parameter, so a declaration of `_S_destroy_c_locale' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/i686-pc-linux-gnu/bits/messages_members.h:80: error: there are no arguments to `_S_create_c_locale' that depend on a template parameter, so a declaration of `_S_create_c_locale' must be available In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/locale_facets.tcc:43, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/locale:47, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/ostream.tcc:37, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/ostream:535, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/iterator:70, from /usr/qt/3/include/qvaluelist.h:48, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits: At global scope: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:897: error: `float __builtin_huge_valf()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:897: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:897: error: `float __builtin_huge_valf()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:897: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:899: error: `float __builtin_nanf(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:899: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:899: error: `float __builtin_nanf(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:899: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:900: error: field initializer is not constant /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:915: error: field initializer is not constant /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:955: error: `double __builtin_huge_val()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:955: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:955: error: `double __builtin_huge_val()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:955: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:957: error: `double __builtin_nan(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:957: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:957: error: `double __builtin_nan(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:957: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:958: error: field initializer is not constant /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:973: error: field initializer is not constant /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1013: error: `long double __builtin_huge_vall()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1013: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1013: error: `long double __builtin_huge_vall()' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1013: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1015: error: `long double __builtin_nanl(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1015: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1015: error: `long double __builtin_nanl(const char*)' cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1015: error: a function call cannot appear in a constant-expression /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1016: error: field initializer is not constant /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/limits:1032: error: field initializer is not constant In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/list:71, from /usr/qt/3/include/qvaluelist.h:49, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h: In constructor `std::_List_base<_Tp, _Alloc>::_List_base(const typename std::_List_alloc_base<_Tp, _Alloc, std::_Alloc_traits<_Tp,_Allocator>::_S_instanceless>::allocator_type&)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h:304: error: `_M_node' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h:304: error: there are no arguments to `_M_get_node' that depend on a template parameter, so a declaration of `_M_get_node' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h: In destructor `std::_List_base<_Tp, _Alloc>::~_List_base()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h:313: error: `_M_node' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_list.h:313: error: there are no arguments to `_M_put_node' that depend on a template parameter, so a declaration of `_M_put_node' must be available In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/list:74, from /usr/qt/3/include/qvaluelist.h:49, from /usr/qt/3/include/qmap.h:46, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/list.tcc: In member function `void std::_List_base<_Tp, _Alloc>::__clear()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/list.tcc:72: error: `_M_node' undeclared (first use this function) In file included from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/map:66, from /usr/qt/3/include/qmap.h:51, from /usr/qt/3/include/qmime.h:43, from /usr/qt/3/include/qevent.h:45, from /usr/qt/3/include/qobject.h:45, from /usr/kde/3.3/include/ksockaddr.h:23, from nntpthreadsocket.h:26, from nntpthreadsocket.cpp:22: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h: In constructor `std::_Rb_tree_base<_Tp, _Alloc>::_Rb_tree_base(const typename std::_Rb_tree_alloc_base<_Tp, _Alloc, std::_Alloc_traits<_Tp,_Allocator>::_S_instanceless>::allocator_type&)': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:579: error: `_M_header' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:579: error: there are no arguments to `_M_get_node' that depend on a template parameter, so a declaration of `_M_get_node' must be available /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h: In destructor `std::_Rb_tree_base<_Tp, _Alloc>::~_Rb_tree_base()': /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:580: error: `_M_header' undeclared (first use this function) /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_tree.h:580: error: there are no arguments to `_M_put_node' that depend on a template parameter, so a declaration of `_M_put_node' must be available make[2]: *** [nntpthreadsocket.o] Error 1 queueparts.cpp: In member function `bool DecodeThread::decode(QPostItem*)': queueparts.cpp:578: warning: `DecodeThreadEvent*dte' might be used uninitialized in this function make[2]: Leaving directory `/var/tmp/portage/klibido-0.2.1.1/work/klibido-0.2.1.1/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/klibido-0.2.1.1/work/klibido-0.2.1.1' make: *** [all] Error 2 !!! ERROR: net-nntp/klibido-0.2.1.1 failed. !!! Function kde_src_compile, Line 166, Exitcode 2 !!! died running emake, kde_src_compile:make !!! If you need support, post the topmost build error, NOT this status message. ===========
Dmitri, can you please supply the output of emerge --info
*headdesk* I was trying to use distcc with gcc-3.3 on one machine and gcc-3.4 on the other. For the life of me, I can't remember when I switched the compiler on my desktop machine. Compiles and works perfectly! Sorry for wasting bandwidth.