_readdir_pyx extension cannot be compiled with MSVC
Alexander Belchenko
bialix at ukr.net
Thu Oct 2 16:52:07 BST 2008
John Arbash Meinel пишет:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Alexander Belchenko wrote:
>> building 'bzrlib._readdir_pyx' extension
>> c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c
>> /nologo /Ox /MD /W3 /GX /DNDEBUG -IC:\Python\2.5.1\include
>> -IC:\Python\2.5.1\PC /Tcbzrlib/_readdir_pyx.c
>> /Fobuild\temp.win32-2.5\Release\bzrlib/_readdir_pyx.obj
>> _readdir_pyx.c
>> bzrlib\_readdir_pyx.c(32) : fatal error C1083: Cannot open include file:
>> 'dirent.h': No such file or directory
>> Building of "bzrlib._readdir_pyx" extension failed, will use the Python
>> version instead
>>
>
> That's actually file. "_readdir_pyx" is only meant to be used on
> platforms that use "readdir()" which is cygwin and POSIX, not win32.
>
> What I don't understand is why it is *trying* to build it. At least
> according to my setup.py:
>
> if sys.platform == 'win32':
> add_pyrex_extension('bzrlib._dirstate_helpers_c',
> libraries=['Ws2_32']
> )
> ....
> add_pyrex_extension('bzrlib._walkdirs_win32',
> define_macros=[('WIN32', None)])
> else:
> add_pyrex_extension('bzrlib._dirstate_helpers_c')
> add_pyrex_extension('bzrlib._readdir_pyx')
>
>
> Which says that if "sys.platform == 'win32'" build the "_walkdirs_win32"
> extension, otherwise build the "_readdir_pyx" extension.
>
> What is your sys.platform?
And with Python 2.4 walkdirs_win32 cannot be compiled too:
building 'bzrlib._walkdirs_win32' extension
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox /MD /W3 /GX /DNDEBUG -DWIN32
-IC:\Python\2.4.4\include -IC:\Python\2.4.4\PC /Tcbzrlib/_walkdirs_win32.c
/Fobuild\temp.win32-2.4\Release\bzrlib/_walkdirs_win32.obj
_walkdirs_win32.c
bzrlib\_walkdirs_win32.c(1100) : error C2065: 'T_LONGLONG' : undeclared identifier
bzrlib\_walkdirs_win32.c(1100) : error C2099: initializer is not a constant
Building of "bzrlib._walkdirs_win32" extension failed, will use the Python version instead
John, you just released 1.7.1. If this was fixed in trunk, why it's not in the release?
It's annoying. Sorry, but it's really annoying.
More information about the bazaar
mailing list