This is the mail archive of the
mailing list for the Cygwin project.
Re: g++ don't build my project from last update
- From: Marco Atzeri <marco dot atzeri at gmail dot com>
- To: cygwin at cygwin dot com
- Date: Thu, 21 Apr 2016 11:21:05 +0200
- Subject: Re: g++ don't build my project from last update
- Authentication-results: sourceware.org; auth=none
- References: <1461227815 dot 667215524 at f430 dot i dot mail dot ru>
On 21/04/2016 10:36, ÐÐÐÑÑÐÐ ÐÐÑÐÐÐ wrote:
I updated my cygwin yesterday, because I found strange bug when using boost::asio::ip::tcp::socket for sending some text information(some information became broken). I haven't got such bug under my Linux OS, so I decide upgrade the cygwin.
After successful updating of cygwin I can't build my project.
The cygwin header has been recently update and reshuffled.
The first error of compiler is:
In file included from /usr/include/boost/thread/thread_time.hpp:10:0,
/usr/include/boost/date_time/microsec_time_clock.hpp: In static member function 'static time_type boost::date_time::microsec_clock<time_type>::create_time(boost::date_time::microsec_clock<time_type>::time_converter)':
/usr/include/boost/date_time/microsec_time_clock.hpp:84:26: error: there are no arguments to 'gettimeofday' that depend on a template parameter, so a declaration of 'gettimeofday' must be available [-fpermissive]
gettimeofday(&tv, 0); //gettimeofday does not support TZ adjust on Linux.
The definition is in /usr/include/sys/time.h
#if __MISC_VISIBLE || __XSI_VISIBLE
The second error message:
/usr/include/boost/date_time/microsec_time_clock.hpp:84:26: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from /usr/include/boost/asio/detail/signal_blocker.hpp:25:0,
/usr/include/boost/asio/detail/posix_signal_blocker.hpp: In constructor 'boost::asio::detail::posix_signal_blocker::posix_signal_blocker()':
/usr/include/boost/asio/detail/posix_signal_blocker.hpp:42:25: error: 'sigfillset' was not declared in this scope
#if __BSD_VISIBLE || __XSI_VISIBLE >= 4
I have tried to use -fpermissive, but it's not help me. I also have tried to add define _GNU_SOURCE, _POSIX_C_SOURCE=200809L, _XOPEN_SOURCE=700. If I define _GNU_SOURCE or _XOPEN_SOURCE=700 the project build successful, but it's not work, because boost::asio::ip::tcp::socket raise exception that socket.available() is not supported(but it was).
I also try full reinstall of cygwin, but it's not help. I attached output of command "cygcheck -s -v -r".
What it may be the problem and how I may resolve it?
try using __XSI_VISIBLE=4
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple