Uploaded image for project: 'Log4cxx'
  1. Log4cxx
  2. LOGCXX-299

odbcappender.cpp does not compile with unixODBC on linux

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.10.0, 0.11.0
    • None
    • Appender
    • None
    • Debian Linux (Lenny) with autotools
      unixODBC 2.2.11

    Description

      When building after ./configure --with-ODBC=unixODBC I get the following:

      g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"log4cxx\" -DVERSION=\"0.10.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_MBSRTOWCS=1 -DHAVE_WCSTOMBS=1 -DHAVE_SYSLOG=1 -DHAVE_FWIDE=1 -I. -I../../../src/main/include -I../../../src/main/include -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include/postgresql -g -O2 -MT odbcappender.lo -MD -MP -MF .deps/odbcappender.Tpo -c odbcappender.cpp -fPIC -DPIC -o .libs/odbcappender.o
      odbcappender.cpp: In member function 'virtual void log4cxx::db::ODBCAppender::execute(const log4cxx::LogString&, log4cxx::helpers::Pool&)':
      odbcappender.cpp:170: error: cannot convert 'wchar_t*' to 'SQLWCHAR*' in initialization
      odbcappender.cpp: In member function 'virtual void* log4cxx::db::ODBCAppender::getConnection(log4cxx::helpers::Pool&)':
      odbcappender.cpp:240: error: cannot convert 'wchar_t*' to 'SQLWCHAR*' in initialization
      odbcappender.cpp:248: error: cannot convert 'wchar_t*' to 'SQLWCHAR*' for argument '5' to 'SQLRETURN SQLDriverConnectW(void*, void*, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLUSMALLINT)'
      make[3]: *** [odbcappender.lo] Error 1
      make[3]: Leaving directory `/home/matthew/log4cxx_debian/debpkg/head/apache-log4cxx/src/main/cpp'
      make[2]: *** [all-recursive] Error 1
      make[2]: Leaving directory `/home/matthew/log4cxx_debian/debpkg/head/apache-log4cxx/src/main'
      make[1]: *** [all-recursive] Error 1
      make[1]: Leaving directory `/home/matthew/log4cxx_debian/debpkg/head/apache-log4cxx/src'
      make: *** [all-recursive] Error 1

      The header <sqlext.h> defines SQL_WCHAR but I cannot find any SQLWCHAR. Is this a typo or is it a unixODBC vs other libraries issue?

      Attachments

        Activity

          People

            carnold@apache.org Curt Arnold
            sunergos Matthew Vernon
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 6h
                6h
                Remaining:
                Remaining Estimate - 6h
                6h
                Logged:
                Time Spent - Not Specified
                Not Specified