The ubuntu package has been compiled with an additional set of DEB_CONFIGURE_EXTRA_FLAGS += --with-unicode --enable-threads
The "--with-unicode" will effectivly define -DODBCXX_UNICODE which in turn will compile with ODBCXX_STRING=std::wstring !! However neighter odbc++/config.h nor pkgconfig/libodcbc++.pc will list the define such that ALL programs depending on the libodbc++ package can not possibly link - the libodbc++-mt.so does really contain symbol definitions with std_char_traits<wchar_t>. You can check that by running objdump -TC /usr/lib/libodbc++-mt.so All this is completely wrong - a normal Ubuntu user will not want to compile with wchar_t anyway but using utf8-char instead. Possibly the Ubuntu package maintainer was mistaken by the --with-unicode option to enable utf8 but it does really invoke utf16. The Ubuntu libodbc++ DOES NOT PROVIDE any variant for common utf8 at all and it is hence improbable to be useful. A small patch would be to add -DODBCXX_UNICODE into the pkgconfig file and/or appending "#define ODBCXXX_UNICODE" to the installed odbc++/config.h such that you would get compile errors instead of linking errors. That would leave the binary *.so as is. - A better approach would be to assume that the package is broken beyond all repair so that bogues --with-unicode should be removed and a working (but binary incompatible) libodbc++.so to be shipped. Note that this is Ubuntu-only - the Debian package probably works. -- libodbc++ linking problems https://bugs.launchpad.net/bugs/159991 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs