2016-07-31 7 views
0

Windows 10/MSYS2/Cygwin에서 FileZilla의 wxWidgets 컴파일 중에이 오류가 발생합니다.'timeval *'을 'PTIMEVAL {aka __ms_timeval *}'(으)로 변환 할 수 없습니다.

$ ./configure를 --prefix = "$ 홈/접두사"--enable-정적 --disable-공유 --build = x86_64에-W64-mingw32 --enable-유니 코드 --without-libtiff을 --without-libjpeg --with-해외 거주자 = 내장 --with-의 libpng = 내장 --disable-fsvolume

$ make 

/home/alex_buz/wx3/bk-deps g++ -c -o netlib_socket.o -I./.pch/wxprec_netlib -D__WXMSW__  -DWXBUILDING -I./src/png -I./src/zlib -I./src/regex -I./src/expat/lib -DwxUSE_GUI=0 -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -D_FILE_OFFSET_BITS=64 -I/home/alex_buz/wx3/lib/wx/include/msw-unicode-static-3.0 -I./include -DWX_PRECOMP -O2 -fno-strict-aliasing ./src/common/socket.cpp 
./src/common/socket.cpp: In member function ‘wxSocketEventFlags 
wxSocketImpl::Select(wxSocketEventFlags, const timeval*)’: 

./src/common/socket.cpp:1343:73: error: cannot convert ‘timeval*’ to ‘PTIMEVAL {aka __ms_timeval*}’ for argument ‘5’ to ‘int select(int, fd_set*, fd_set*, fd_set*, PTIMEVAL)’ 
    const int rc = select(m_fd + 1, preadfds, pwritefds, &exceptfds, &tv); 
                     ^
make: *** [Makefile:29796: netlib_socket.o] Error 1 

Google 검색이 높일 관련이 몇 가지 힌트를 주었다. 문제를 해결할 방법이 있습니까?

+0

왜 이런 일이 일어날 지 모르겠지만 어떤 경우에도 Cygwin 네이티브 컴파일러를 사용하여 빌드하지 말 것을 권장합니다. 네이티브 컴파일러를 설치하고'--host = i686-w64-mingw32 --build = i686-pc -cygwin' (http://wxwidgets.blogspot.com/2011/06/choosing-gcc-for-building-wxwidgets.html)에 설명되어 있습니다. –

답변

0

두 값은 서로 다른 구조이므로 유형이입니다. 그들에 대한 정의 코드를 보라.

변환 할 수 없습니다 => 인스턴스를 만들고 멤버를 설정하십시오.