KDE/kdelibs
Paulo Jorge Guedes
Paulo.Guedes at artelecom.pt
Wed Apr 5 13:03:20 CEST 2006
I rebuilt and the error is now:
d:/kde/kdelibs/kdecore/network/kreverseresolver.cpp: In member function `virtual bool <unnamed>::ReverseThread::run()':
d:/kde/kdelibs/kdecore/network/kreverseresolver.cpp:235: error: `::getnameinfo' has not been declared
make[2]: *** [kdecore/CMakeFiles/kdecore.dir/network/kreverseresolver.obj] Error 1
make[1]: *** [kdecore/CMakeFiles/kdecore.dir/all] Error 2
make: *** [all] Error 2
Paulo
> -----Original Message-----
> From: Paulo Jorge Guedes [mailto:Paulo.Guedes at artelecom.pt]
> Sent: quarta-feira, 5 de Abril de 2006 11:43
> To: kde-buildsystem at kde.org
> Subject: RE: KDE/kdelibs
>
> > -----Original Message-----
> > From: Peter Kümmel [mailto:syntheticpp at gmx.net]
> > Sent: quinta-feira, 16 de Fevereiro de 2006 20:03
> > To: kde-buildsystem at kde.org
> > Subject: Re: KDE/kdelibs
> >
> > Paulo Jorge Guedes wrote:
> > >> -----Original Message-----
> > >> From: Paulo Jorge Guedes [mailto:Paulo.Guedes at artelecom.pt]
> > >> Sent: quinta-feira, 16 de Fevereiro de 2006 17:40
> > >> To: kde-buildsystem at kde.org
> > >> Subject: RE: KDE/kdelibs
> > >
> > >>>> Can you check if you have getaddrinfo and getnameinfo in your
> > > system?
> > >>> I don't have any. This fails:
> > >>>
> > >>> #if (_WIN32_WINNT >= 0x0501)
> > >> For Windows XP it should be:
> > >>
> > >> _WIN32_WINNT>=0x0501
> > >> WINVER>=0x0501
> > >>
> > >> I'm getting 1024 for both.
> > >>
> > >> So, I guess we need to include netsupp.cpp (which doesn't compile
> btw)
> > >> also on win32 as there is a chance this functions are not available.
> > >
> > > Well, on windef.h:11:
> > >
> > > #ifndef WINVER
> > > #define WINVER 0x0400
> > > /*
> > > * If you need Win32 API features newer the Win95 and WinNT then you
> > > must
> > > * define WINVER before including windows.h or any other method of
> > > including
> > > * the windef.h header.
> > > */
> > > #endif
> > > #ifndef _WIN32_WINNT
> > > #define _WIN32_WINNT WINVER
> > >
> > > Now, the question is, what is the best way to workaround this?
> > >
> > > Paulo
> >
> > I've tested it with mingw 3.4.2, and here are no problems
> > finding getaddrinfo:
> > -- Looking for getaddrinfo
> > -- Looking for getaddrinfo - found
> >
> > To test just for getaddrinfo:
> > (I think you know all the steps, I just wanna be sure)
> >
> > 1. rm CMakeCache.txt
> > 2. cmake -G"MinGW Makefiles" ../kdelibs/win
> > 3. make
> > 4. make install
> > 5. rm CMakeCache.txt
> > 6. cmake -G"MinGW Makefiles" ../kdelibs
> >
> > now there is a config.h in there folder, delete the line below
> > //Have symbol getaddrinfo
> > and run 6. again, so you can test on getaddrinfo only.
> >
> >
> > The detecting of getaddrinfo should be independent of _WIN32_WINNT and
> > WINVER,
> > because it is defined in ws2tcpip.h (the version of your mingw
> > installation)
> > and there are now (at least here) #ifdefs.
>
> I changed computer and had to install MinGW again. It happens that I'm
> having the same problem again.
>
> You say those are defined in ws2tcpip.h. I can only see a declaration,
> which of course depends on _WIN32_WINNT:
>
> #if (_WIN32_WINNT >= 0x0501)
> void WSAAPI freeaddrinfo (struct addrinfo*);
> int WSAAPI getaddrinfo (const char*,const char*,const struct addrinfo*,
> struct addrinfo**);
> int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
> char*,DWORD,int);
> #else
> /* FIXME: Need WS protocol-independent API helpers. */
> #endif
>
> My _WIN32_WINNT value is 0x0400 by default so I got this:
>
> -- Looking for getnameinfo
> -- Looking for getnameinfo - not found.
>
> The build error I got is an undefined reference so I guess the declaration
> is being found somewhere. Don't know if it would link right if it was
> found in the config process though.
>
> Paulo
>
> _______________________________________________
> Kde-buildsystem mailing list
> Kde-buildsystem at kde.org
> https://mail.kde.org/mailman/listinfo/kde-buildsystem
More information about the Kde-buildsystem
mailing list