gnutls-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [sr #107827] Build GnuTLS 3.0.2 for windows!


From: Bjørn Christensen
Subject: RE: [sr #107827] Build GnuTLS 3.0.2 for windows!
Date: Tue, 4 Oct 2011 14:31:17 +0200

The problem was solve by adding an #undef select ,  to  let system.c actually find the definition from winsock2.h.

 

There must be a #define somewhere to set select to 'select_used_without_including_sys_select_h' to warn that it have not been define probably,

 

 

/bhc

 

 

 

From: Vincent Torri [mailto:address@hidden
Sent: 4. oktober 2011 14:23
To: Bjørn Christensen
Cc: Nikos Mavrogiannopoulos; Nikos Mavrogiannopoulos; address@hidden
Subject: Re: [sr #107827] Build GnuTLS 3.0.2 for windows!

 

 

2011/10/4 Bjørn Christensen <address@hidden>

<sys/select.h> is not available under windows, it tried with <winsock2.h> where select in define for windows but it did not help.


use MSDN:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms740141%28v=vs.85%29.aspx

select() is declared when winsock2.h is included.

header : winsock2.h
lib : libws2_32
 
I don't understand why there are problems. I use select() for a project I'm working on without any issue. I just include winsock2.h on Windows:

#ifdef _WIN32
# include <winsock2.h>
#endif

and that's all (or add a check in configure.ac and guard it with HAVE_WINSOCK2_H)


If I add <sys/select.h> I get file not found.


this file does not exist on Windows.
 
Vincent Torri




I can see that the old gcrypt.h had a forward declarations for select, but now where we have moved to nettle gcrypt.h is not included any more.

I am sure that the declaration of select is in the winsock2.h

The declaration of select is cover by a:
#if ! (defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))


Which is not is not the case. I do not know what that means.


I can solve the problem by in the #ifdef _WIN32 section of system.c  include the winsock2.h and add a forward declaration for select. (stolen from gcrypt.h)

#ifdef _WIN32
#include <windows.h>

#include <winsock2.h>
ssize_t (*select) (int nfd, void *rset, void *wset, void *eset, struct timeval *timeout);

#else

That is not a nice solution but it works.

Better suggestions are appreciated


/bhc


PS: --disable-cxx worked.

Thanks!



-----Original Message-----
From: Nikos Mavrogiannopoulos [mailto:address@hidden]
Sent: 3. oktober 2011 23:19
To: Nikos Mavrogiannopoulos; Bjørn Christensen; address@hidden
Subject: [sr #107827] Build GnuTLS 3.0.2 for windows!

Follow-up Comment #12, sr #107827 (project gnutls):

You can use ./configure --disable-cxx
to disable the C++ library.

About the select issue, if you add an include <sys/select.h> does it work?


   _______________________________________________________

Reply to this item at:

 <http://savannah.gnu.org/support/?107827>

_______________________________________________
 Message sent via/by Savannah
 http://savannah.gnu.org/

_______________________________________________
Gnutls-devel mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/gnutls-devel

 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]