bzr 1.14: Installing from source broken by default on Windows when compiling extensions
John Arbash Meinel
john at arbash-meinel.com
Fri May 1 15:30:10 BST 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Gary van der Merwe wrote:
> On Thu, Apr 30, 2009 at 6:41 PM, John Arbash Meinel
> <john at arbash-meinel.com> wrote:
>> 2) Find out that /usr/bin/gcc no longer exists as a real .exe and is now
>> a symlink pointing to /etc/alternatives/gcc, etc, etc. Which breaks all
>> of 'py setup.py build_ext' because there is now no .exe for it to find...
>>
>> 3) cry a bit
>>
>> 4) rm /usr/bin/gcc-3exe ; cp /usr/bin/gcc-3.exe /usr/bin/gcc.exe
>> # You have to delete it first, otherwise it seems to follow the
>> # symlink, and claims you can't copy a file onto itself
>
>
> This is not a problem if you use the cygwin bash shell.
>
> (Sorry for the duplicate mail John. Hit reply instead of reply to all.)
>
>
It is a problem when using the pure python executable to build the
pure-win32 extensions. It knows how to find 'gcc.exe' but not when that
object is a symlink.
If you set 'compiler = mingw' (or python setup.py -c mingw) it will
search for C:\cygwin\bin\gcc.exe
And it knows to pass '-mno-cygwin' so that you don't end up with a
binary that is built against cygwin?.dll.
I do this intentionally because I *don't* want to accidentally use the
cygwin python and build cygwin extensions. (IIRC, cygwin python will
actually build .dll files instead of .pyd, for a bit of special
craziness, which means you can actually build *both* cygwin dlls and
win32 dlls in the same place, as long as you build the win32 ones
*first* so win32 python doesn't try to load the cygwin version.)
John
=:->
(sorry for double replying to *you*, as I see mail directly to me before
I see mail to the bzr list.)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkn7B3IACgkQJdeBCYSNAAMZCgCgvDkOfhLjkLHDgkinzCUqrVfS
KOIAniR1ZTRd6oDTdJmtGL1Is6KLiHq2
=FCRe
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list