python 2.7.12 pip install with extensions fails with warning: "__BSD_VISIBLE" redefined

cyg Simple
Tue Nov 29 11:50:00 GMT 2016

On 11/28/2016 2:53 PM, Stephen Paul Carrier wrote:
>>> Hi -
>>> The newest version of cygwin with python 2.7.12-1 fails when pip
>>> installing packages that require compilation.  For example, pycrypto
>>> fails:
>> FWIW this patch to pycrypto also fixes it:
>> The problem only occurs when trying to build with the C99 standard if
>> Python itself was not.
> I fixed this issue by editing /usr/include/python2.7/pyconfig.h to comment
> out the second line of:
> /* Define on FreeBSD to activate all library features */
> #define __BSD_VISIBLE 1

The use of a __PRIVATE_DEFINE is highly discouraged.  In sys/features.h
you'll find a comment to that effect.  Python should have used
_BSD_SOURCE but even that is deprecated in favor of _DEFAULT_SOURCE.

> This seemed like the right thing to do since Cygwin isn't FreeBSD, and
> the problem went away.

No but that doesn't mean the functions do not exist.

> Is this an oversight in python-devel package?  Issue doesn't occur in
> 32-bit version.

The oversight would be the use of the private define instead of the
public one.  If you remove the __BSD_VISIBLE and use _DEFAULT_SOURCE
instead does it help?  If not then there is a deeper issue.

cyg Simple

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list