http://bugs.winehq.org/show_bug.cgi?id=25900
Summary: build fails dlls/httpapi/httpapi_main.c on caos NSA 0.9 x86_64 Product: Wine Version: 1.3.12 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: blocker Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: cjnitta@gmail.com
I have tried building wine versions 1.2.1, 1.2.2, and 1.3.12 on caos NSA 0.9 x86_64. All versions have the same behavior when I try to build them.
When I try to build I get the following error on httpapi_main.c: gcc -m32 -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -g -O2 -o httpapi_main.o httpapi_main.c In file included from ../../include/http.h:25, from httpapi_main.c:27: ../../include/ws2tcpip.h:57: error: conflicting types for 'socklen_t' /usr/include/unistd.h:245: error: previous declaration of 'socklen_t' was here make[1]: *** [httpapi_main.o] Error 1 make[1]: Leaving directory `/home/cnitta/wine-1.3.12/dlls/httpapi' make: *** [dlls/httpapi] Error 2
I have tried adding #define USE_WS_PREFIX as discussed in: http://www.mail-archive.com/wine-devel@winehq.org/msg53614.html
It will compile httpapi_main.c, but then fails on internettransport.c: gcc -m32 -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -g -O2 -o internettransport.o internettransport.c In file included from internettransport.c:23: ../../include/ws2tcpip.h:57: error: conflicting types for 'socklen_t' /usr/include/unistd.h:245: error: previous declaration of 'socklen_t' was here make[1]: *** [internettransport.o] Error 1 make[1]: Leaving directory `/home/cnitta/wine-1.3.12/dlls/inetcomm' make: *** [dlls/inetcomm] Error 2
Applying the same fix to internettransport.c causes many other problems such as "storage size of 'hints' isn't known", etc.
This seems somewhat similar to the problems associated with OpenBSD, bug 16660.
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #1 from Juan Lang juan_lang@yahoo.com 2011-01-27 10:50:51 CST --- Created an attachment (id=33008) --> (http://bugs.winehq.org/attachment.cgi?id=33008) Patch: Always define USE_WS_PREFIX
Does this help?
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #2 from Juan Lang juan_lang@yahoo.com 2011-01-27 10:56:01 CST --- Created an attachment (id=33009) --> (http://bugs.winehq.org/attachment.cgi?id=33009) Patch: Always define USE_WS_PREFIX (#2)
Here's another one for inetcomm. Do the two help?
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #3 from Christopher Nitta cjnitta@gmail.com 2011-01-27 11:19:43 CST --- Created an attachment (id=33010) --> (http://bugs.winehq.org/attachment.cgi?id=33010) httpapi_main.c USE_WS_PREFIX patch
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #4 from Christopher Nitta cjnitta@gmail.com 2011-01-27 11:23:58 CST --- Created an attachment (id=33011) --> (http://bugs.winehq.org/attachment.cgi?id=33011) build fail error message for internettransport.c
I applied the two patches, plus the one above from http://www.mail-archive.com/wine-devel@winehq.org/msg53614.html
It now fails on internettransport.c with the attached error message.
http://bugs.winehq.org/show_bug.cgi?id=25900
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |juan_lang@yahoo.com
http://bugs.winehq.org/show_bug.cgi?id=25900
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #33008|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=25900
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #33009|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #5 from Juan Lang juan_lang@yahoo.com 2011-01-27 11:34:39 CST --- Right, I forgot to do a make clean, so I didn't see the failure here. Let me try a fix to the include file instead, fixing it piecemeal is likely to be a pain.
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #6 from Juan Lang juan_lang@yahoo.com 2011-01-27 11:35:22 CST --- Created an attachment (id=33012) --> (http://bugs.winehq.org/attachment.cgi?id=33012) Patch: Be more careful about defining socklen_t
How does this work for you?
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #7 from Christopher Nitta cjnitta@gmail.com 2011-01-27 12:24:31 CST --- I applied the " Be more careful about defining socklen_t" patch and removed the other three and it seems to have fixed the initial problem. The build proceeds past the dlls/httpapi and dlls/inetcomm, but now fails at dlls/ws2_32/tests with:
gcc -m32 -c -I. -I. -I../../../include -I../../../include -DWINE_STRICT_PROTOTYPES -DWINE_NO_NAMELESS_EXTENSION -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -g -O2 -o sock.o sock.c sock.c: In function 'test_ip_pktinfo': sock.c:1159: warning: pointer targets in passing argument 3 of 'getsockname' differ in signedness sock.c: At top level: sock.c:2524: error: conflicting types for 'gethostname' /usr/include/unistd.h:845: error: previous declaration of 'gethostname' was here make[1]: *** [sock.o] Error 1 make[1]: Leaving directory `/home/cnitta/wine-1.3.12/dlls/ws2_32/tests' make: *** [dlls/ws2_32/tests] Error 2
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #8 from Juan Lang juan_lang@yahoo.com 2011-01-28 10:43:32 CST --- Why/how is unistd.h getting included when building the tests?
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #9 from Christopher Nitta cjnitta@gmail.com 2011-01-28 15:47:24 CST --- Got me, I have no idea.
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #10 from Juan Lang juan_lang@yahoo.com 2011-01-28 16:00:31 CST --- Please cd to dlls/ws2_32/tests, and run: gcc -E -m32 -c -I. -I. -I../../../include -I../../../include -DWINE_STRICT_PROTOTYPES -DWINE_NO_NAMELESS_EXTENSION -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -g -O2 -o sock.i sock.c
then attach sock.i here.
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #11 from Christopher Nitta cjnitta@gmail.com 2011-01-28 16:52:25 CST --- Created an attachment (id=33032) --> (http://bugs.winehq.org/attachment.cgi?id=33032) sock.i compressed in sock.zip
I had to compress the sock.i in order to attach it.
http://bugs.winehq.org/show_bug.cgi?id=25900
prabhu prabhu.swain@patni.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |prabhu.swain@patni.com
http://bugs.winehq.org/show_bug.cgi?id=25900
Matias Colli matiasbsd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |matiasbsd@gmail.com
--- Comment #12 from Matias Colli matiasbsd@gmail.com 2012-05-02 20:15:37 CDT --- Hi, mi name is Matias Colli, I'm Argentina and I new in this forum. Please, see this patch for solution the internettransport.c compilation problem: dlls/inetcomm/internettransport.c
--- a/include/winsock.h +++ b/include/winsock.h @@ -79,12 +79,14 @@ # define fd_set unix_fd_set # define timeval unix_timeval # define select unix_select +# define socklen_t unix_socklen_t # include <sys/types.h> # include <time.h> # include <stdlib.h> # undef fd_set # undef timeval # undef select +# undef socklen_t # undef FD_SETSIZE # undef FD_CLR # undef FD_SET
--- a/include/ws2tcpip.h +++ b/include/ws2tcpip.h @@ -57,7 +57,9 @@ typedef struct WS(addrinfoW) struct WS(addrinfoW)* ai_next; } ADDRINFOW, *PADDRINFOW;
+#ifdef USE_WS_PREFIX typedef int WS(socklen_t); +#undef
--- a/dlls/inetcomm/internettransport.c +++ b/dlls/inetcomm/internettransport.c @@ -20,19 +20,15 @@
#define COBJMACROS
-#include <stdarg.h> -#include <stdio.h> - +#include "ws2tcpip.h" #include "windef.h" -#include "winbase.h" #include "winnt.h" -#include "winuser.h" -#include "winsock2.h" -#include "ws2tcpip.h" #include "objbase.h" #include "ole2.h" #include "mimeole.h"
+#include <stdio.h> + #include "wine/debug.h"
#include "inetcomm_private.h"
http://bugs.winehq.org/show_bug.cgi?id=25900
Jerome Leclanche adys.wh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch CC| |adys.wh@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=25900
--- Comment #13 from Austin English austinenglish@gmail.com 2013-12-09 18:31:05 CST --- Caos Linux is no longer active: http://caoslinux.org/?hg=0&nr=0
This particular problem doesn't exist with gravityos-release1-2.iso, fwiw. Christopher, can you reproduce this in any current distro?
https://bugs.winehq.org/show_bug.cgi?id=25900
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |wylda@volny.cz Resolution|--- |ABANDONED
--- Comment #14 from Wylda wylda@volny.cz --- Abandoned.
https://bugs.winehq.org/show_bug.cgi?id=25900
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #15 from Wylda wylda@volny.cz --- Closing - abandoned.