Eric Lindblad
2015-Sep-05 20:42 UTC
[Xapian-discuss] question / errors Interix 3.5 / xapian-core-1.2.21 / Eric Lindblad
Question by Eric Lindblad 05-09-2015 http://www.ericlindblad.blogspot.com I would enquire if anyone has an opinion on whether it might be a possibility that adding the following #ifdef in certain xapian-core-1.2.21 /common and/or /backends files following the string #include <sys/types.h> might move closer towards resolution the 'ambiguous overload' issue. +#ifdef __INTERIX +# include <stdint.h> +#endif + Note (as below) this #ifdef was used to enable libuuid-1.0.3 to compile, on this modified SFU Interix 3.5 setup. Note (as below) my SFU Interix 3.5 setup was modified as copying over from SUA Interix (for Vista & newer) getopt.h, inttypes.h, and stdint.h into C:\SFU\usr\include. -------------------------------------------- From: "Eric Lindblad" <GeirfuglApS at yahoo.com> Subject: errors Interix 3.5 / xapian-core-1.2.21 / Eric Lindblad To: "Xapian Discussion" <xapian-discuss at lists.xapian.org> Date: Friday, August 28, 2015, 10:00 AM Report by Eric Lindblad 28-08-2015 http://www.ericlindblad.blogspot.com As of Windows 8.1 MS has discontinued enabling for Interix, so perhaps there is little or no interest in this e-mail's subject matter. NB: As regards possible languages for xapian-bindings I only have be able to compile earlier versions of Tcl with a static library on Interix 3.5, Perl versions fail 'make check', and I have little record of my 'unsuccessful' attempt to compile Python under Interix. Microsoft XP SP3 Home Edition (i.e., absent networking components present in Microsoft XP Professional) SFU* Interix 3.5 w/ appropriated getopt.h, inttypes.h, stdint.h from SUA Interix <version?>** for Vista and newer placed in C:\SFU\usr\include * SFU35SEL_EN.exe extracts to various files including SfuSetup.msi which required modification of a line of code so as to be installed on XP Home Edition; this was done only for testing purposes as I had not an XP Professional Edition available. ** Utilities and SDK for UNIX-based Applications_X86.exe NB: The above extracts to various files including gcc4.2.tgz which further extracts to a directory 'gcc_sources_4.2' which when scanned by AVG issued warnings on the following files: binutils-2.17\gas\testsuite\gas\cris\rd-v32-b2.s binutils-2.17\gas\testsuite\gas\cris\rd-v32-b1.s [reported to MS Security Response Center in July 2015] [disclaimer: I do not represent AVG] WeirdX (JCraft, Japan) started by weirdx-Java2.bat used as an X Server running twm, as Interix provided X11 files but no X Server. sole upgrades were make-3.81 as gmake --prefix=/usr --program-prefix=g m4-1.4.9 as gm4 --prefix=/usr --program-prefix=g libuuid & zlib http://sourceforge.net/projects/libuuid/ libuuid-1.0.3.tar.gz the following lines can be added to uuidP.h from the above extracted libuuid-1.0.3.tar.gz, after #include <sys/types.h>, which allows it to compile on above described SFU Interix 3.5 setup +#ifdef __INTERIX +# include <stdint.h> +#endif + provided lines from: https://searchcode.com/codesearch/view/37251130/ without endeavouring to provide any FLAGS, zlib-1.2.8 was compiled --static, as a shared zlib would not pass 'make test', but the configure script from xapian-core-1.2.21 did not seem to have issues with a static zlib ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ --docdir=/usr/doc/xapian-core-1.2.21 successive runs of gmake resulted in the following errors 1) /backends/chert/chert_btreebase.cc:34 w/ citation to /common/io_utils.h:76 'fsync' undeclared CPPFLAGS="-D_ALL_SOURCE" added env CPPFLAGS="-D_ALL_SOURCE" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ --docdir=/usr/doc/xapian-core-1.2.21 2) /common/errno_to_string.cc:69 'strerror_r' undeclared CPPFLAGS="-D_ALL_SOURCE -D_REENTRANT -I/usr/local/include" added env CPPFLAGS="-D_ALL_SOURCE -D_REENTRANT -I/usr/local/include" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ --docdir=/usr/doc/xapian-core-1.2.21 3) /net/tcpclient.cc:77 'htons' undeclared disabled remote backend env CPPFLAGS="-D_ALL_SOURCE -D_REENTRANT -I/usr/local/include" \ ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ --docdir=/usr/doc/xapian-core-1.2.21 \ --enable-backend-remote=no resulting in the compile of libxapian.so.22.6.8 and libxapian.a 4) then the following sequence of errors depbase=`echo backends/brass/brass_check.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'` ;\ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I .. -I../common -I../include -I'./include' -I../languages -Ilanguages -I../query parser -D_ALL_SOURCE -D_REENTRANT -I/usr/local/include -fshow-column -Wall -W -W redundant-decls -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long -Wformat -security -fno-gnu-keywords -Wundef -Woverloaded-virtual -mfpmath=sse -msse2 -g -O2 -MT backends/brass/brass_check.lo -MD -MP -MF $depbase.Tpo -c -o backends/br ass/brass_check.lo ../backends/brass/brass_check.cc &&\ mv -f $depbase.Tpo $depbase.Plo libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../common -I../include -I./inc lude -I../languages -Ilanguages -I../queryparser -D_ALL_SOURCE -D_REENTRANT -I/u sr/local/include -fshow-column -Wall -W -Wredundant-decls -Wpointer-arith -Wcast -qual -Wcast-align -Wno-long-long -Wformat-security -fno-gnu-keywords -Wundef -W overloaded-virtual -mfpmath=sse -msse2 -g -O2 -MT backends/brass/brass_check.lo -MD -MP -MF backends/brass/.deps/brass_check.Tpo -c ../backends/brass/brass_chec k.cc -DPIC -o backends/brass/.libs/brass_check.o ../backends/brass/brass_check.cc: In static member function `static void BrassTableCheck::check(const char*, const std::string&, brass_revision_number_t*, int, std::ostream&)': ../backends/brass/brass_check.cc:216: error: ambiguous overload for ` std::basic_ostream<char, std::char_traits<char> >& << brass_tablesize_t&' operator /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:63: error: candidates are: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_ostream<_CharT, _Traits>&(*)(std::basic_ostream<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:85: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_ios<_CharT, _Traits>&(*)(std::basic_ios<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:107: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::ios_base&(*)(std::ios_base&)) [with _CharT = char, _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:179: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:216: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long unsigned int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:154: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(bool) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:178: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(short int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:189: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(short unsigned int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:193: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:204: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(unsigned int) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:306: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(double) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:219: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(float) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:331: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long double) [with _CharT = char, _Traits std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:356: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(const void*) [with _CharT = char, _Traits std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:128: error: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_streambuf<_CharT, _Traits>*) [with _CharT char, _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/ostream:436: error: std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, char) [with _CharT char, _Traits = std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:508: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, char) [with _Traits = std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:447: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, signed char) [with _Traits = std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/ostream:452: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, unsigned char) [with _Traits = std::char_traits<char>] /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:580: error: std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const char*) [with _CharT = char, _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/bits/ostream.tcc:630: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const char*) [with _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/ostream:486: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const signed char*) [with _Traits = std::char_traits<char>] <near match> /opt/gcc.3.3/include/c++/3.3/ostream:491: error: std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const unsigned char*) [with _Traits = std::char_traits<char>] <near match> gmake[2]: *** [backends/brass/brass_check.lo] Error 1 gmake[2]: Leaving directory `/dev/fs/C/tmp/xapian-core-1.2.21/BUILD' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/dev/fs/C/tmp/xapian-core-1.2.21/BUILD' gmake: *** [all] Error 2 $
James Aylett
2015-Sep-06 09:44 UTC
[Xapian-discuss] question / errors Interix 3.5 / xapian-core-1.2.21 / Eric Lindblad
On 5 Sep 2015, at 21:42, Eric Lindblad <geirfuglaps at yahoo.com> wrote:> I would enquire if anyone has an opinion on whether it might be a possibility that adding the following #ifdef in certain xapian-core-1.2.21 /common and/or /backends files following the string #include <sys/types.h> might move closer towards resolution the 'ambiguous overload' issue. > > +#ifdef __INTERIX > +# include <stdint.h> > +#endif > +Eric ? I don?t know nearly enough about Interix to be able to help in any real way. If you think this will work, I?d suggest just adding it in all cases (there?s only about 20 in the entire codebase I think). However the fact that you had to copy header files from different versions of Interix suggests to me that you?re going to keep on running into other problems even if you can get past this one. J -- James Aylett, occasional trouble-maker xapian.org