delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/06/27/23:40:30

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=1.1 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FB_GET_MEDS,FREEMAIL_FROM,TW_GT,TW_LG,TW_LR,TW_LW,TW_UU,TW_WX,TW_XZ
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
Reply-To: gavin53perry AT gmail DOT com
In-Reply-To: <AANLkTilzl4TL6ZUGfQURgFTy9WUANfBaFYGt8o2TUjaV@mail.gmail.com>
References: <AANLkTilnvEUBnRzieVusa2hsaGbMnA5YdBP5bVvrF6f- AT mail DOT gmail DOT com> <AANLkTilzl4TL6ZUGfQURgFTy9WUANfBaFYGt8o2TUjaV AT mail DOT gmail DOT com>
Date: Sun, 27 Jun 2010 22:40:16 -0500
Message-ID: <AANLkTin9BkgbHqYblGcBjXE5h0D552y9UCgDjSH46QnS@mail.gmail.com>
Subject: Re: Error making wxWigets 2.8.10 in Cygwin 1.7.5
From: Gavin <gavin53perry AT gmail DOT com>
To: =?ISO-8859-1?Q?Fr=E9d=E9ric_Bron?= <frederic DOT bron AT m4x DOT org>
Cc: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Sorry it's wxWigets 2.8.11 not 2.8.10

Resolved with simple change to match declaration of select() in
 /include/w32api/winsock.h
with that in
 /usr/include/sys/select.h
I hope I picked the right one!

Fr=E9d=E9ric, thanks for the help setting flags, but that wasn't the (only)=
 problem.
=46rom the make log I had this, and I've marked the change I made in {{ }}
and added some new lines for clarity.


Sorry for not following standard syntax, I'm an old programmer just
getting into the modern style of how to do things cross platform.

In file included from ../../src/msw/utils.cpp:56:
/usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../../include/w32api/winsock.h:479:
error: declaration of C function
`int select(int, _types_fd_set*, _types_fd_set*, _types_fd_set*, const
timeval*)'
conflicts with /usr/include/sys/select.h:31:
error: previous declaration
`int select(int, _types_fd_set*, _types_fd_set*, _types_fd_set*, timeval*)'

{{ change winsock.h to match select.h; actual line is different, with
PASCAL and struct in it.

Log continues...}}

here ../../src/msw/utils.cpp:
In function `const wxChar* wxGetHomeDir(wxString*)':
../../src/msw/utils.cpp:407:
warning: `int cygwin_conv_to_full_win32_path(const char*, char*)' is deprec=
ated
(declared at /usr/include/sys/cygwin.h:52)
../../src/msw/utils.cpp:407: warning:
`int cygwin_conv_to_full_win32_path(const char*, char*)' is deprecated
(declared at /usr/include/sys/cygwin.h:52)
make: *** [basedll_msw_utils.o] Error 1
----------------------------------------------------

I reran make and it completed this time:
 tail of log:

Creating library file:
/cygdrive/c/wxWidgets/buildMSWd/msw/lib/libwx_msw_richtet-2.8.dll.a
(if test -d utils/wxrc ; then cd utils/wxrc && make all ; fi)
make[1]: Entering directory `/cygdrive/c/wxWidgets/buildMSWd/msw/utils/wxrc'
/cygdrive/c/wxWidgets/buildMSWd/msw/bk-deps g++ -c -o wxrc_wxrc.o -D__WXMSW=
__
  -I../../../../utils/wxrc -DWXUSINGDLL -DwxUSE_GUI=3D0 -D_FILE_OFFSET_BITS=
=3D64 -D
LARGE_FILES -I/cygdrive/c/wxWidgets/buildMSWd/msw/lib/wx/include/msw-ansi-r=
elea
e-2.8 -I../../../../include -Wall -Wundef -Wno-ctor-dtor-privacy -O2 -fno-s=
tric
-aliasing ../../../../utils/wxrc/wxrc.cpp
g++ -o wxrc.exe wxrc_wxrc.o    -L/cygdrive/c/wxWidgets/buildMSWd/msw/lib   =
 -lw
_base_xml-2.8  -lwx_base-2.8   -lwxzlib-2.8   -lwxexpat-2.8 -lrpcrt4 -lolea=
ut32
-lole32 -luuid -lwinspool -lwinmm -lshell32 -lcomctl32 -lcomdlg32 -lctl3d32=
 -la
vapi32 -lwsock32 -lgdi32 -lkernel32 -luser32  -lrpcrt4 -loleaut32 -lole32 -=
luui
 -lwinspool -lwinmm -lshell32 -lcomctl32 -lcomdlg32 -lctl3d32 -ladvapi32 -l=
wsoc
32 -lgdi32 -lkernel32 -luser32
make[1]: Leaving directory `/cygdrive/c/wxWidgets/buildMSWd/msw/utils/wxrc'

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D


If someone can verify my change and make the patch, anyone else trying
wxWidgets 2.8.11 with cygwin 1.7.5 can miss this gottcha. Maybe there
is a flag to change this error into a warning, but that's beyond me.


Gavin



2010/6/27 Fr=E9d=E9ric Bron <frederic DOT bron AT m4x DOT org>:
>> ../configure --with-msw --enable-debug
>
> to have a windows binary (independent of cygwin):
> CC=3Dgcc-3 CXX=3Dg++-3 CFLAGS=3D"-mno-cygwin" CXXFLAGS=3D"-mno-cygwin"
> LDFLAGS=3D"-mno-cygwin" ./configure --with-msw ...
>
> to have a cygwin binary
> ./configure --with-gtk ...
>
> Fr=E9d=E9ric

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019