#1582 closed defect (fixed)

zetuptoolz delenda est

Reported by: davidsarah Owned by: somebody
Priority: major Milestone: 1.11.0
Component: packaging Version: 1.9.0b1
Keywords: setuptools review-needed Cc: vladimir@…
Launchpad Bug:

Description (last modified by daira)

We need to stop using setuptools, for the following reasons:

  • it frequently downloads, builds, installs, and/or runs the wrong code
  • it frequently gives incorrect, misleading, or insufficient information about what it is doing
  • it operates in a way that is incompatible with many OS packaging practices
  • its behaviour when downloading dependencies is easily exploitable; I don't know of any way to use it securely
  • its implementation is too complex to understand
  • we have needed to maintain a fork in order to partially, and with limited success, mitigate these problems
  • the bugs and design flaws that cause the above problems are not shallow, and it's unlikely that they're going to be fixed any time soon, because it is also poorly maintained.

Dealing with the effects of setuptools' problems on Tahoe-LAFS has inconvenienced users on many occasions and wasted a huge amount of core developer time. This ticket is to find, or to design and implement, an alternative.

Change History (51)

comment:1 Changed at 2012-03-29T19:56:50Z by davidsarah

  • Priority changed from major to critical

comment:2 Changed at 2012-11-13T23:32:22Z by zooko

  • Priority changed from critical to normal

I feel like this isn't as urgent as most bugs marked "Priority: Critical". If you disagree, then I apologize for overwriting the priority setting you left. Note that as the months and years have gone by, various other tools have been developed or improved; tools that we might be able to use, such as "Wheel" by Daniel Tolth, and "Paver". There are probably a few others that I haven't even heard of. Also pip and virtualenv have been ubiquitous and popular.

comment:3 Changed at 2012-11-14T03:14:40Z by davidsarah

  • Priority changed from normal to major

Major because of the sheer amount of pain setuptools has caused us. (pip doesn't solve most of those problems because it's just a frontend to setuptools, and the issues with setuptools are not primarily in limited to its easy_install frontend.)

Last edited at 2013-07-09T00:33:21Z by daira (previous) (diff)

comment:4 follow-up: Changed at 2013-07-08T23:50:04Z by daira

  • Description modified (diff)

peep is another tool that intends to address this problem. I couldn't get it to work on Tahoe; it downloaded the required sdists and then blew up with an exception from pip, which it depends on:

$ cp src/allmydata_tahoe.egg-info/requires.txt requirements.txt
$ peep install -r requirements.txt
[...]
  File "/usr/local/lib/python2.7/dist-packages/peep-0.2.1-py2.7.egg/EGG-INFO/scripts/peep", line 143, in hashes_of_requirements
    for req in reqs:  # InstallRequirements
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1240, in parse_requirements
    skip_regex = options.skip_requirements_regex
AttributeError: 'NoneType' object has no attribute 'skip_requirements_regex'

If I understand correctly, pip by itself does not help you at all in verifying the integrity of dependencies; *at most* it will download the package you're directly installing over https.

Last edited at 2013-07-09T00:03:32Z by daira (previous) (diff)

comment:5 in reply to: ↑ 4 Changed at 2013-07-09T00:21:54Z by daira

Replying to daira:

If I understand correctly, pip by itself does not help you at all in verifying the integrity of dependencies; *at most* it will download the package you're directly installing over https.

More about what pip actually does: https://github.com/TheTorProject/ooni-backend/pull/1#discussion-diff-4084881.

I despair of Python package installation tools getting any better unless one is written COMPLETELY FROM SCRATCH by someone who knows what they're doing.

Last edited at 2013-07-09T00:31:21Z by daira (previous) (diff)

comment:6 follow-up: Changed at 2013-07-09T00:44:49Z by dstufft

I don't believe the packaging tools need rewritten from scratch to enable secure install.

pip *will* verify the integrity of the downloads if it has that information available. Currently it is using md5 to do that (although that's not pip's doing, it supports md5, sha1, and sha2). At the urging of some members of ooni I am preparing to "once more into the breach" to fight for a better hash on PyPI.

The behavior described in the ooni pull request about scraping is mostly correct. However on July 1st I removed most link scraping from PyPI and the imminent pip 1.4 release makes the insecure external scraping opt-out on the installer side, and 1.5 will make it opt-in.

There is currently nothing like peep where you can bake a hash into a requirements.txt and verify against that, but it is something I want to enable. (As a side note, the above probably failed, because I don't believe a requires.txt is going to have the same format as requirements.txt).

Beyond that can you provide more information on:

  • "it frequently downloads, builds, installs, and/or runs the wrong code"
  • "it frequently gives incorrect, misleading, or insufficient information about what it is doing"

The other issues I believe are either fixed, or are becoming fixed.

comment:7 Changed at 2013-07-09T18:13:59Z by zooko

dstufft: thank you for your comment! In my opinion, an important thing going on here is just that Daira has strong negative emotions about setuptools. I don't want to push her to keep working on debugging and tweaking setuptools-based tools. On the other hand, I don't want to rip out all the setuptools stuff and replace it, either! So the ideal path forward in my opinion is either that we all pretend to ignore the problem and work on other things, or that someone other than Daira takes responsibility for diagnosing and fixing packaging-related issues.

Also Brian is pretty much in the same boat as Daira in hating and resenting a lot of setuptools-related issues. (In my opinion. Not to put words in their mouths!)

Actually I'm not too keen on spending my time debugging that stuff either. ;-)

So, if someone (like dstufft!) wants to help us with our packaging, that would be greatly appreciated.

comment:8 Changed at 2013-07-10T01:12:44Z by dstufft

zooko: I have no problem with helping to debug things, although I'm unlikely to have a ton of time to submit actual patches though D:

I'm more than willing to help debug things though if people have specific problems or tracebacks/logs that they can point me towards to see what's going on :) I joined the #tahoe-lafs channel and folks can ping me there for more immediate help if needed.

I know setuptools isn't the greatest thing in the world, and there is work being done to phase it out eventually :)

comment:9 in reply to: ↑ 6 Changed at 2014-03-17T18:32:12Z by daira

Replying to dstufft:

Beyond that can you provide more information on:

  • "it frequently downloads, builds, installs, and/or runs the wrong code"
  • "it frequently gives incorrect, misleading, or insufficient information about what it is doing"

#1258 and #1287, for example.

comment:10 Changed at 2014-03-17T18:33:52Z by daira

Also #1450 and #1451.

comment:12 Changed at 2014-03-17T19:42:48Z by dstufft

So those tickets are all variations on the same theme, and that theme is multi version installs are terrible and setuptools does them by default. That's why pip disabled them. You could probably override setup.py build|install|egg_info|develop etc to use pip instead of easy_install, or just tell everyone to use pip ;)

comment:13 Changed at 2015-05-04T23:50:38Z by glyph

It would be very good for this ticket description to link to as many specific issues as possible in the setuptools, pip, and https://github.com/pypa/packaging-problems issue trackers, so that the problems can be run down in the place most obviously responsible for them. As it stands, most of this is accurate, but nebulous, griping about an old version of setuptools that Tahoe is stuck on, rather than an accurate framing of the state of the art.

When this ticket was filed, the setuptools team was leaving a period of being insular, unresponsive, and basically user-hostile. In the interim, setuptools has vastly accelerated its release cadence, increased its responsiveness to user bugs, and developed an ecosystem of tools and practices to obviate many of the issues discussed here.

The situation is still pretty bad in some corners, but it's vastly better than it once was, and most importantly, it is at least now worthwhile to go through the effort of filing specific issues because they do, in fact, get addressed eventually.

comment:14 Changed at 2015-05-05T00:01:04Z by daira

I would very much like to switch to using pip with a virtualenv rather than zetuptoolz with the hack to build dependencies under the support/ directory. However we're at completely the wrong stage in Tahoe's release cycle to work on that right now; it will have to wait until 1.11 at least.

comment:15 Changed at 2015-05-05T00:03:38Z by glyph

Sure; no rush. I am just trying to get my head around why exactly zetuptoolz exists, and which of these issues still exist vs. which don't. For example - would switching to a virtualenv fully address the things that motivated this ticket?

comment:16 Changed at 2015-05-05T00:04:45Z by daira

BTW there is a lot of very precise detail in the linked tickets about exactly what goes wrong whenever there are multiple packages installed under the same directory. As far as I know, none of that has been fixed.

comment:17 Changed at 2015-05-05T00:16:50Z by daira

Discussion of how to use pip and virtualenv should be on ticket #2077.

comment:18 Changed at 2015-12-08T18:26:06Z by daira

  • Keywords review-needed added
  • Milestone changed from undecided to 1.11.0

comment:19 Changed at 2015-12-08T18:29:43Z by daira

I think we also want to enforce a minimum version of setuptools and/or use virtualenv automatically where available, but this branch can act as a base for that.

comment:20 Changed at 2016-01-12T10:21:19Z by hawkowl

Glyph mentioned that Tahoe pins pyOpenSSL to 0.13 because of various setuptools reasons. Since I want to phase out support for non-Cryptography-using pyOpenSSL, I thought I'd post a comment here saying that using anything below 0.15.1 will be deprecated soon, and I don't want Tahoe to be left in the dark. :)

comment:21 Changed at 2016-01-14T23:42:55Z by daira

Tahoe doesn't actually pin pyOpenSSL to 0.13. It will happily use >= 0.14 if such a version is already installed, but it will only request to build >= 0.13, <= 0.13.1 otherwise.

Version 0, edited at 2016-01-14T23:42:55Z by daira (next)

comment:22 follow-up: Changed at 2016-01-14T23:44:09Z by daira

Also, this is not for setuptools reasons, at least not directly. It is because our experience was that the dependency on cffi was causing too many build failures.

comment:23 in reply to: ↑ 22 Changed at 2016-01-15T02:20:39Z by glyph

Replying to daira:

Also, this is not for setuptools reasons, at least not directly. It is because our experience was that the dependency on cffi was causing too many build failures.

I vaguely remember discussing this (it is kind of hard to find history in all these different tickets) but I don't see it mentioned here, and the situation has changed a lot since 2013, so, here goes:

Right now, Cryptography distributes wheels for OS X and Windows, which bundle OpenSSL and seem to install very reliably; I am fielding far fewer complaints about Twisted not installing due to build errors on those platforms, and it was a real headache when pyOpenSSL first moved.

This effort is also underway - https://github.com/manylinux/manylinux - to allow wheels to be provided that will robustly work across any possible reasonable linux distribution.

Does this change the situation at all for Tahoe?

Separately you may be interested in https://github.com/manylinux/auditwheel for your own purposes if Tahoe is producing its own build artifacts.

comment:24 follow-up: Changed at 2016-01-15T11:44:33Z by daira

I'm quite happy to accept that the installation situation has improved. Does it still require manual installation of libffi, or is that now statically linked with the wheel? (Split the answer by platform and/or distribution if necessary.)

Last edited at 2016-01-15T11:45:17Z by daira (previous) (diff)

comment:25 Changed at 2016-01-15T17:50:38Z by daira

  • Summary changed from setuptools delenda est to zetuptoolz delenda est

comment:26 in reply to: ↑ 24 Changed at 2016-01-15T21:01:17Z by glyph

Replying to daira:

I'm quite happy to accept that the installation situation has improved. Does it still require manual installation of libffi, or is that now statically linked with the wheel? (Split the answer by platform and/or distribution if necessary.)

I believe the wheels statically link libffi on all platforms. It certainly must on Windows, because I've done pip install cryptography there, and it works, and I definitely never installed libffi on that platform. On OS X, there is guaranteed to be a system version of libffi, so it's less important there.

On Linux I would presume static libffi would be a must.

comment:27 Changed at 2016-02-09T18:14:23Z by daira

On Windows 7 using the 1582.setuptools-delenda-est.1 branch:

D:\tahoe\git\delenda\trunk>pip install .
Processing d:\tahoe\git\delenda\trunk
Requirement already satisfied (use --upgrade to upgrade): setuptools>=0.6c6 in c:\python27\lib\site-packages (
from allmydata-tahoe==0.0.0)
Collecting zfec>=1.1.0 (from allmydata-tahoe==0.0.0)
  Downloading zfec-1.4.24.tar.gz (175kB)
    100% |################################| 176kB 1.3MB/s
Collecting simplejson>=1.4 (from allmydata-tahoe==0.0.0)
  Downloading simplejson-3.8.1.tar.gz (76kB)
    100% |################################| 77kB 1.3MB/s
Requirement already satisfied (use --upgrade to upgrade): zope.interface!=3.6.3,!=3.6.4,>=3.6.0 in c:\python27
\lib\site-packages (from allmydata-tahoe==0.0.0)
Collecting foolscap>=0.10.1 (from allmydata-tahoe==0.0.0)
  Downloading foolscap-0.10.1-py2-none-any.whl (291kB)
    100% |################################| 294kB 187kB/s
Collecting pycrypto!=2.2,!=2.4,>=2.1.0 (from allmydata-tahoe==0.0.0)
  Downloading pycrypto-2.6.1.tar.gz (446kB)
    100% |################################| 446kB 871kB/s
Collecting pycryptopp>=0.6.0 (from allmydata-tahoe==0.0.0)
  Downloading pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.tar.gz (2.0MB)
    100% |################################| 2.0MB 219kB/s
Collecting service-identity (from allmydata-tahoe==0.0.0)
  Downloading service_identity-14.0.0-py2.py3-none-any.whl
Collecting characteristic>=14.0.0 (from allmydata-tahoe==0.0.0)
  Downloading characteristic-14.3.0-py2.py3-none-any.whl
Collecting pyasn1>=0.1.8 (from allmydata-tahoe==0.0.0)
  Using cached pyasn1-0.1.9-py2.py3-none-any.whl
Collecting pyasn1-modules>=0.0.5 (from allmydata-tahoe==0.0.0)
  Downloading pyasn1_modules-0.0.8-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): Twisted>=13.0.0 in c:\python27\lib\site-packages (fr
om allmydata-tahoe==0.0.0)
Collecting Nevow>=0.11.1 (from allmydata-tahoe==0.0.0)
  Downloading Nevow-0.12.0-py2-none-any.whl (481kB)
    100% |################################| 483kB 871kB/s
Collecting pyOpenSSL>=0.14 (from allmydata-tahoe==0.0.0)
  Using cached pyOpenSSL-0.15.1-py2.py3-none-any.whl
Collecting pyutil>=1.3.19 (from zfec>=1.1.0->allmydata-tahoe==0.0.0)
  Downloading pyutil-2.0.0.tar.gz (125kB)
    100% |################################| 126kB 2.6MB/s
Requirement already satisfied (use --upgrade to upgrade): six>=1.5.2 in c:\python27\lib\site-packages\six-1.9.
0-py2.7.egg (from pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
Collecting cryptography>=0.7 (from pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
  Using cached cryptography-1.2.2-cp27-none-win_amd64.whl
Collecting zbase32>=1.0 (from pyutil>=1.3.19->zfec>=1.1.0->allmydata-tahoe==0.0.0)
  Downloading zbase32-1.1.5.tar.gz
Requirement already satisfied (use --upgrade to upgrade): enum34 in c:\python27\lib\site-packages\enum34-1.0.4
-py2.7.egg (from cryptography>=0.7->pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
Collecting ipaddress (from cryptography>=0.7->pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
  Using cached ipaddress-1.0.16-py27-none-any.whl
Collecting idna>=2.0 (from cryptography>=0.7->pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
  Using cached idna-2.0-py2.py3-none-any.whl
Collecting cffi>=1.4.1 (from cryptography>=0.7->pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
  Using cached cffi-1.5.0-cp27-none-win_amd64.whl
Collecting pycparser (from cffi>=1.4.1->cryptography>=0.7->pyOpenSSL>=0.14->allmydata-tahoe==0.0.0)
Building wheels for collected packages: zfec, simplejson, pycrypto, pycryptopp, pyutil, zbase32
  Running setup.py bdist_wheel for zfec ... done
  Stored in directory: C:\Users\Daira\AppData\Local\pip\Cache\wheels\64\16\97\567a40e28a93866f1f439b8d27872701
dd527d88984786a555
  Running setup.py bdist_wheel for simplejson ... done
  Stored in directory: C:\Users\Daira\AppData\Local\pip\Cache\wheels\4e\25\10\2ff5f7347927f4816794414d599a5383
c7f8dd9a9ff729af28
  Running setup.py bdist_wheel for pycrypto ... done
  Stored in directory: C:\Users\Daira\AppData\Local\pip\Cache\wheels\96\b0\e6\03e439d41cb2592b5c4c9c77873761d6
cbd417b332076680cd
  Running setup.py bdist_wheel for pycryptopp ... error
  Complete output from command c:\python27\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\
daira\\appdata\\local\\temp\\pip-build-mz_nuh\\pycryptopp\\setup.py';exec(compile(getattr(tokenize, 'open', op
en)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d c:\users\daira\appdata\local\te
mp\tmpn4b70bpip-wheel- --python-tag cp27:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-2.7
  creating build\lib.win-amd64-2.7\pycryptopp
  copying src\pycryptopp\_version.py -> build\lib.win-amd64-2.7\pycryptopp
  copying src\pycryptopp\__init__.py -> build\lib.win-amd64-2.7\pycryptopp
  creating build\lib.win-amd64-2.7\pycryptopp\cipher
  copying src\pycryptopp\cipher\aes.py -> build\lib.win-amd64-2.7\pycryptopp\cipher
  copying src\pycryptopp\cipher\xsalsa20.py -> build\lib.win-amd64-2.7\pycryptopp\cipher
  copying src\pycryptopp\cipher\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\cipher
  creating build\lib.win-amd64-2.7\pycryptopp\hash
  copying src\pycryptopp\hash\sha256.py -> build\lib.win-amd64-2.7\pycryptopp\hash
  copying src\pycryptopp\hash\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\hash
  creating build\lib.win-amd64-2.7\pycryptopp\publickey
  copying src\pycryptopp\publickey\ecdsa.py -> build\lib.win-amd64-2.7\pycryptopp\publickey
  copying src\pycryptopp\publickey\rsa.py -> build\lib.win-amd64-2.7\pycryptopp\publickey
  copying src\pycryptopp\publickey\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\publickey
  creating build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519
  copying src\pycryptopp\publickey\ed25519\keys.py -> build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519
  copying src\pycryptopp\publickey\ed25519\_version.py -> build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519

  copying src\pycryptopp\publickey\ed25519\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519

  creating build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_aes.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_ecdsa.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_ed25519.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_ed25519_kat.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_from_Nikratio.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_rsa.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_sha256.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\test_xsalsa20.py -> build\lib.win-amd64-2.7\pycryptopp\test
  copying src\pycryptopp\test\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\test
  running egg_info
  writing requirements to pycryptopp.egg-info\requires.txt
  writing pycryptopp.egg-info\PKG-INFO
  writing top-level names to pycryptopp.egg-info\top_level.txt
  writing dependency_links to pycryptopp.egg-info\dependency_links.txt
  warning: manifest_maker: standard file '-c' not found

  reading manifest file 'pycryptopp.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'pycryptopp.egg-info\SOURCES.txt'
  creating build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\__init__.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\bench_algs.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\bench_ciphers.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\bench_hashes.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\bench_sigs.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  copying src\pycryptopp\bench\common.py -> build\lib.win-amd64-2.7\pycryptopp\bench
  creating build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\SHA256LongMsg.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\SHA256Monte.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\SHA256ShortMsg.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\kat-ed25519-short.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\kat-ed25519.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  copying src\pycryptopp\testvectors\xsalsa20.txt -> build\lib.win-amd64-2.7\pycryptopp\testvectors
  creating build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBGFSbox128e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBGFSbox256e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBKeySbox128e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvect
ors\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBKeySbox256e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvect
ors\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBVarKey128e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBVarKey256e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBVarTxt128e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  copying src\pycryptopp\testvectors\KAT_AES\ECBVarTxt256e.txt -> build\lib.win-amd64-2.7\pycryptopp\testvecto
rs\KAT_AES
  running build_ext
  building 'pycryptopp._pycryptopp' extension
  creating build\temp.win-amd64-2.7
  creating build\temp.win-amd64-2.7\Release
  creating build\temp.win-amd64-2.7\Release\src-cryptopp
  creating build\temp.win-amd64-2.7\Release\src
  creating build\temp.win-amd64-2.7\Release\src\pycryptopp
  creating build\temp.win-amd64-2.7\Release\src\pycryptopp\publickey
  creating build\temp.win-amd64-2.7\Release\src\pycryptopp\hash
  creating build\temp.win-amd64-2.7\Release\src\pycryptopp\cipher
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\algebra.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\algebra.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  algebra.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\algparam.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\algparam.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  algparam.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\asn.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\asn.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  asn.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\basecode.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\basecode.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  basecode.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\cpu.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\cpu.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  cpu.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\cryptlib.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\cryptlib.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  cryptlib.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\des.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\des.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  des.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\dessp.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\dessp.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  dessp.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\dll.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\dll.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  dll.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\dsa.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\dsa.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  dsa.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\ec2n.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\ec2n.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  ec2n.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\eccrypto.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\eccrypto.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  eccrypto.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\ecp.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\ecp.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  ecp.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\eprecomp.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\eprecomp.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  eprecomp.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\filters.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\filters.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  filters.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\fips140.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\fips140.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  fips140.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\gf2n.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\gf2n.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  gf2n.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\gfpcrypt.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\gfpcrypt.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  gfpcrypt.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\hex.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\hex.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  hex.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\hmac.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\hmac.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  hmac.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\integer.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\integer.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  integer.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\iterhash.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\iterhash.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  iterhash.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\misc.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\misc.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  misc.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\modes.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\modes.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  modes.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\mqueue.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\mqueue.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  mqueue.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\nbtheory.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\nbtheory.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  nbtheory.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\oaep.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\oaep.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  oaep.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\osrng.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\osrng.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  osrng.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\pkcspad.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\pkcspad.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  pkcspad.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\pssr.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\pssr.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  pssr.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\pubkey.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\pubkey.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  pubkey.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\queue.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\queue.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  queue.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\randpool.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\randpool.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  randpool.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\rdtables.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\rdtables.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  rdtables.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\rijndael.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\rijndael.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  rijndael.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\rng.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\rng.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  rng.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\rsa.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\rsa.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  rsa.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\salsa.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\salsa.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  salsa.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\serpent.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\serpent.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  serpent.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\sha.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\sha.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  sha.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\sosemanuk.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\sosemanuk.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  sosemanuk.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\strciphr.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\strciphr.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  strciphr.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\tiger.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\tiger.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  tiger.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc-crypt
opp\tigertab.cpp /Fobuild\temp.win-amd64-2.7\Release\src-cryptopp\tigertab.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  tigertab.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/_pycryptoppmodule.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/_pycryptoppmodule.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  _pycryptoppmodule.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/publickey/rsamodule.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/publickey/rsamodule.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  rsamodule.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/hash/sha256module.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/hash/sha256module.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  sha256module.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/cipher/aesmodule.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/cipher/aesmodule.obj -w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  aesmodule.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/cipher/xsalsa20module.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/cipher/xsalsa20module.obj -
w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  xsalsa20module.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -DCRYPTOPP_DISABLE_ASM=1 -I. -Ic:\python27\include -Ic:\python27\PC /Tpsrc/pycry
ptopp/publickey/ecdsamodule.cpp /Fobuild\temp.win-amd64-2.7\Release\src/pycryptopp/publickey/ecdsamodule.obj -
w
  cl : Command line warning D9025 : overriding '/W3' with '/w'
  ecdsamodule.cpp
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Include\xlocale(342) : w
arning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\link.exe /DLL
/nologo /INCREMENTAL:NO /LIBPATH:c:\python27\libs /LIBPATH:c:\python27\PCbuild\amd64 /EXPORT:init_pycryptopp b
uild\temp.win-amd64-2.7\Release\src-cryptopp\algebra.obj build\temp.win-amd64-2.7\Release\src-cryptopp\algpara
m.obj build\temp.win-amd64-2.7\Release\src-cryptopp\asn.obj build\temp.win-amd64-2.7\Release\src-cryptopp\base
code.obj build\temp.win-amd64-2.7\Release\src-cryptopp\cpu.obj build\temp.win-amd64-2.7\Release\src-cryptopp\c
ryptlib.obj build\temp.win-amd64-2.7\Release\src-cryptopp\des.obj build\temp.win-amd64-2.7\Release\src-cryptop
p\dessp.obj build\temp.win-amd64-2.7\Release\src-cryptopp\dll.obj build\temp.win-amd64-2.7\Release\src-cryptop
p\dsa.obj build\temp.win-amd64-2.7\Release\src-cryptopp\ec2n.obj build\temp.win-amd64-2.7\Release\src-cryptopp
\eccrypto.obj build\temp.win-amd64-2.7\Release\src-cryptopp\ecp.obj build\temp.win-amd64-2.7\Release\src-crypt
opp\eprecomp.obj build\temp.win-amd64-2.7\Release\src-cryptopp\filters.obj build\temp.win-amd64-2.7\Release\sr
c-cryptopp\fips140.obj build\temp.win-amd64-2.7\Release\src-cryptopp\gf2n.obj build\temp.win-amd64-2.7\Release
\src-cryptopp\gfpcrypt.obj build\temp.win-amd64-2.7\Release\src-cryptopp\hex.obj build\temp.win-amd64-2.7\Rele
ase\src-cryptopp\hmac.obj build\temp.win-amd64-2.7\Release\src-cryptopp\integer.obj build\temp.win-amd64-2.7\R
elease\src-cryptopp\iterhash.obj build\temp.win-amd64-2.7\Release\src-cryptopp\misc.obj build\temp.win-amd64-2
.7\Release\src-cryptopp\modes.obj build\temp.win-amd64-2.7\Release\src-cryptopp\mqueue.obj build\temp.win-amd6
4-2.7\Release\src-cryptopp\nbtheory.obj build\temp.win-amd64-2.7\Release\src-cryptopp\oaep.obj build\temp.win-
amd64-2.7\Release\src-cryptopp\osrng.obj build\temp.win-amd64-2.7\Release\src-cryptopp\pkcspad.obj build\temp.
win-amd64-2.7\Release\src-cryptopp\pssr.obj build\temp.win-amd64-2.7\Release\src-cryptopp\pubkey.obj build\tem
p.win-amd64-2.7\Release\src-cryptopp\queue.obj build\temp.win-amd64-2.7\Release\src-cryptopp\randpool.obj buil
d\temp.win-amd64-2.7\Release\src-cryptopp\rdtables.obj build\temp.win-amd64-2.7\Release\src-cryptopp\rijndael.
obj build\temp.win-amd64-2.7\Release\src-cryptopp\rng.obj build\temp.win-amd64-2.7\Release\src-cryptopp\rsa.ob
j build\temp.win-amd64-2.7\Release\src-cryptopp\salsa.obj build\temp.win-amd64-2.7\Release\src-cryptopp\serpen
t.obj build\temp.win-amd64-2.7\Release\src-cryptopp\sha.obj build\temp.win-amd64-2.7\Release\src-cryptopp\sose
manuk.obj build\temp.win-amd64-2.7\Release\src-cryptopp\strciphr.obj build\temp.win-amd64-2.7\Release\src-cryp
topp\tiger.obj build\temp.win-amd64-2.7\Release\src-cryptopp\tigertab.obj build\temp.win-amd64-2.7\Release\src
/pycryptopp/_pycryptoppmodule.obj build\temp.win-amd64-2.7\Release\src/pycryptopp/publickey/rsamodule.obj buil
d\temp.win-amd64-2.7\Release\src/pycryptopp/hash/sha256module.obj build\temp.win-amd64-2.7\Release\src/pycrypt
opp/cipher/aesmodule.obj build\temp.win-amd64-2.7\Release\src/pycryptopp/cipher/xsalsa20module.obj build\temp.
win-amd64-2.7\Release\src/pycryptopp/publickey/ecdsamodule.obj /OUT:build\lib.win-amd64-2.7\pycryptopp\_pycryp
topp.pyd /IMPLIB:build\temp.win-amd64-2.7\Release\src-cryptopp\_pycryptopp.lib /MANIFESTFILE:build\temp.win-am
d64-2.7\Release\src-cryptopp\_pycryptopp.pyd.manifest
  _pycryptoppmodule.obj : warning LNK4197: export 'init_pycryptopp' specified multiple times; using first spec
ification
     Creating library build\temp.win-amd64-2.7\Release\src-cryptopp\_pycryptopp.lib and object build\temp.win-
amd64-2.7\Release\src-cryptopp\_pycryptopp.exp
  building 'pycryptopp.publickey.ed25519._ed25519' extension
  creating build\temp.win-amd64-2.7\Release\src-ed25519
  creating build\temp.win-amd64-2.7\Release\src-ed25519\glue
  creating build\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\glue\ed25519module.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\glue\ed25519module.obj
  ed25519module.c
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\ed25519.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\ed25519.obj
  ed25519.c
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\fe25519.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\fe25519.obj
  fe25519.c
  src-ed25519\supercop-ref\fe25519.c(82) : warning C4146: unary minus operator applied to unsigned type, resul
t still unsigned
  src-ed25519\supercop-ref\fe25519.c(134) : warning C4146: unary minus operator applied to unsigned type, resu
lt still unsigned
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\ge25519.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\ge25519.obj
  ge25519.c
  src-ed25519\supercop-ref\ge25519.c(157) : warning C4244: 'return' : conversion from 'unsigned __int64' to 'u
nsigned char', possible loss of data
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\sc25519.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\sc25519.obj
  sc25519.c
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\sha512-blocks.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\sha512-blocks.obj
  sha512-blocks.c
  src-ed25519\supercop-ref\sha512-blocks.c(21) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(22) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(23) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(24) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(25) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(26) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(27) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(28) : warning C4244: '=' : conversion from 'uint64' to 'unsigned ch
ar', possible loss of data
  src-ed25519\supercop-ref\sha512-blocks.c(238) : warning C4244: 'return' : conversion from 'unsigned __int64'
 to 'int', possible loss of data
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\sha512-hash.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\sha512-hash.obj
  sha512-hash.c
  src-ed25519\supercop-ref\sha512-hash.c(44) : warning C4244: '=' : conversion from 'unsigned __int64' to 'int
', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(46) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(47) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(48) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(49) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(50) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(51) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(52) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(53) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(56) : warning C4244: '=' : conversion from 'unsigned __int64' to 'int
', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(58) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(59) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(60) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(61) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(62) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(63) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(64) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  src-ed25519\supercop-ref\sha512-hash.c(65) : warning C4244: '=' : conversion from 'unsigned __int64' to 'uns
igned char', possible loss of data
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nol
ogo /Ox /MD /W3 /GS- /DNDEBUG -Isrc-ed25519\supercop-ref -Ic:\python27\include -Ic:\python27\PC /Tcsrc-ed25519
\supercop-ref\verify.c /Fobuild\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\verify.obj
  verify.c
  C:\Users\Daira\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\link.exe /DLL
/nologo /INCREMENTAL:NO /LIBPATH:c:\python27\libs /LIBPATH:c:\python27\PCbuild\amd64 /EXPORT:init_ed25519 buil
d\temp.win-amd64-2.7\Release\src-ed25519\glue\ed25519module.obj build\temp.win-amd64-2.7\Release\src-ed25519\s
upercop-ref\ed25519.obj build\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\fe25519.obj build\temp.win-a
md64-2.7\Release\src-ed25519\supercop-ref\ge25519.obj build\temp.win-amd64-2.7\Release\src-ed25519\supercop-re
f\sc25519.obj build\temp.win-amd64-2.7\Release\src-ed25519\supercop-ref\sha512-blocks.obj build\temp.win-amd64
-2.7\Release\src-ed25519\supercop-ref\sha512-hash.obj build\temp.win-amd64-2.7\Release\src-ed25519\supercop-re
f\verify.obj /OUT:build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519\_ed25519.pyd /IMPLIB:build\temp.win-amd
64-2.7\Release\src-ed25519\glue\_ed25519.lib /MANIFESTFILE:build\temp.win-amd64-2.7\Release\src-ed25519\glue\_
ed25519.pyd.manifest
  ed25519module.obj : warning LNK4197: export 'init_ed25519' specified multiple times; using first specificati
on
     Creating library build\temp.win-amd64-2.7\Release\src-ed25519\glue\_ed25519.lib and object build\temp.win
-amd64-2.7\Release\src-ed25519\glue\_ed25519.exp
  installing to build\bdist.win-amd64\wheel
  running install
  running install_lib
  creating build\bdist.win-amd64
  creating build\bdist.win-amd64\wheel
  creating build\bdist.win-amd64\wheel\pycryptopp
  creating build\bdist.win-amd64\wheel\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\bench_algs.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7
.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\bench_ciphers.py -> build\bdist.win-amd64\wheel\pycryptopp-
0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\bench_hashes.py -> build\bdist.win-amd64\wheel\pycryptopp-0
.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\bench_sigs.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7
.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\common.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.8
69544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  copying build\lib.win-amd64-2.7\pycryptopp\bench\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1
.869544967005693312591928092448767568728501330214.data\..\pycryptopp\bench
  creating build\bdist.win-amd64\wheel\pycryptopp\cipher
  copying build\lib.win-amd64-2.7\pycryptopp\cipher\aes.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869
544967005693312591928092448767568728501330214.data\..\pycryptopp\cipher
  copying build\lib.win-amd64-2.7\pycryptopp\cipher\xsalsa20.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.
1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\cipher
  copying build\lib.win-amd64-2.7\pycryptopp\cipher\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.
1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\cipher
  creating build\bdist.win-amd64\wheel\pycryptopp\hash
  copying build\lib.win-amd64-2.7\pycryptopp\hash\sha256.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.86
9544967005693312591928092448767568728501330214.data\..\pycryptopp\hash
  copying build\lib.win-amd64-2.7\pycryptopp\hash\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.
869544967005693312591928092448767568728501330214.data\..\pycryptopp\hash
  creating build\bdist.win-amd64\wheel\pycryptopp\publickey
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\ecdsa.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.
1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey
  creating build\bdist.win-amd64\wheel\pycryptopp\publickey\ed25519
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519\keys.py -> build\bdist.win-amd64\wheel\pycrypto
pp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey\ed25519
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519\_ed25519.pyd -> build\bdist.win-amd64\wheel\pyc
ryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey\ed25519
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519\_version.py -> build\bdist.win-amd64\wheel\pycr
yptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey\ed25519
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\ed25519\__init__.py -> build\bdist.win-amd64\wheel\pycr
yptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey\ed25519
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\rsa.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.
869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey
  copying build\lib.win-amd64-2.7\pycryptopp\publickey\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0
.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\publickey
  creating build\bdist.win-amd64\wheel\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_aes.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.
869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_ecdsa.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.
1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_ed25519.py -> build\bdist.win-amd64\wheel\pycryptopp-0.
7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_ed25519_kat.py -> build\bdist.win-amd64\wheel\pycryptop
p-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_from_Nikratio.py -> build\bdist.win-amd64\wheel\pycrypt
opp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_rsa.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.
869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_sha256.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7
.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\test_xsalsa20.py -> build\bdist.win-amd64\wheel\pycryptopp-0
.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  copying build\lib.win-amd64-2.7\pycryptopp\test\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.
869544967005693312591928092448767568728501330214.data\..\pycryptopp\test
  creating build\bdist.win-amd64\wheel\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\kat-ed25519-short.txt -> build\bdist.win-amd64\wheel\
pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\kat-ed25519.txt -> build\bdist.win-amd64\wheel\pycryp
topp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  creating build\bdist.win-amd64\wheel\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBGFSbox128e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBGFSbox256e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBKeySbox128e.txt -> build\bdist.win-amd64\w
heel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBKeySbox256e.txt -> build\bdist.win-amd64\w
heel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBVarKey128e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBVarKey256e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBVarTxt128e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\KAT_AES\ECBVarTxt256e.txt -> build\bdist.win-amd64\wh
eel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors\KAT_AES
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\SHA256LongMsg.txt -> build\bdist.win-amd64\wheel\pycr
yptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\SHA256Monte.txt -> build\bdist.win-amd64\wheel\pycryp
topp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\SHA256ShortMsg.txt -> build\bdist.win-amd64\wheel\pyc
ryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\testvectors\xsalsa20.txt -> build\bdist.win-amd64\wheel\pycryptop
p-0.7.1.869544967005693312591928092448767568728501330214.data\..\pycryptopp\testvectors
  copying build\lib.win-amd64-2.7\pycryptopp\_pycryptopp.pyd -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.8
69544967005693312591928092448767568728501330214.data\..\pycryptopp
  copying build\lib.win-amd64-2.7\pycryptopp\_version.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.86954
4967005693312591928092448767568728501330214.data\..\pycryptopp
  copying build\lib.win-amd64-2.7\pycryptopp\__init__.py -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.86954
4967005693312591928092448767568728501330214.data\..\pycryptopp
  running install_data
  creating build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data
  creating build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\
data
  creating build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\
data\share
  creating build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\
data\share\doc
  creating build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214.data\
data\share\doc\pycryptopp
  copying COPYING.GPL -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.8695449670056933125919280924487675687285
01330214.data\data\share\doc\pycryptopp
  copying COPYING.TGPPL.rst -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.8695449670056933125919280924487675
68728501330214.data\data\share\doc\pycryptopp
  copying COPYING.MIT.txt -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568
728501330214.data\data\share\doc\pycryptopp
  copying COPYING.SPL.txt -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.869544967005693312591928092448767568
728501330214.data\data\share\doc\pycryptopp
  copying README.rst -> build\bdist.win-amd64\wheel\pycryptopp-0.7.1.86954496700569331259192809244876756872850
1330214.data\data\share\doc\pycryptopp
  running install_egg_info
  Copying pycryptopp.egg-info to build\bdist.win-amd64\wheel\pycryptopp-0.7.1.86954496700569331259192809244876
7568728501330214.data\..\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214-py2.7.egg-info
  error: [Errno 2] No such file or directory: 'build\\bdist.win-amd64\\wheel\\pycryptopp-0.7.1.869544967005693
312591928092448767568728501330214.data\\..\\pycryptopp-0.7.1.869544967005693312591928092448767568728501330214-
py2.7.egg-info\\dependency_links.txt'

  ----------------------------------------
  Failed building wheel for pycryptopp
  Running setup.py clean for pycryptopp
  Running setup.py bdist_wheel for pyutil ... done
  Stored in directory: C:\Users\Daira\AppData\Local\pip\Cache\wheels\9f\37\7a\e2e4a94ee702581ddf0666c8ec224c0a
c9696426044af2593a
  Running setup.py bdist_wheel for zbase32 ... done
  Stored in directory: C:\Users\Daira\AppData\Local\pip\Cache\wheels\8b\80\19\41d7d381ca9c9d8366b3fa39a64b45e8
81e31f12533630087c
Successfully built zfec simplejson pycrypto pyutil zbase32
Failed to build pycryptopp
Installing collected packages: zbase32, pyutil, zfec, simplejson, ipaddress, pyasn1, idna, pycparser, cffi, cr
yptography, pyOpenSSL, characteristic, pyasn1-modules, service-identity, foolscap, pycrypto, pycryptopp, Nevow
, allmydata-tahoe
  Found existing installation: pyasn1 0.1.7
    Uninstalling pyasn1-0.1.7:
      Successfully uninstalled pyasn1-0.1.7
  Running setup.py install for pycryptopp ... done
  Running setup.py install for allmydata-tahoe ... done
Successfully installed Nevow allmydata-tahoe cffi characteristic cryptography foolscap idna ipaddress pyOpenSS
L pyasn1 pyasn1-modules pycparser pycrypto pycryptopp pyutil service-identity simplejson zbase32 zfec
Traceback (most recent call last):
  File "c:\python27\lib\runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "c:\python27\lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "C:\Python27\Scripts\pip.exe\__main__.py", line 9, in <module>
  File "c:\python27\lib\site-packages\pip\__init__.py", line 217, in main
    return command.main(cmd_args)
  File "c:\python27\lib\site-packages\pip\basecommand.py", line 246, in main
    pip_version_check(session)
  File "c:\python27\lib\site-packages\pip\utils\outdated.py", line 102, in pip_version_check
    installed_version = get_installed_version("pip")
  File "c:\python27\lib\site-packages\pip\utils\__init__.py", line 817, in get_installed_version
    working_set = pkg_resources.WorkingSet()
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 626, in __init__
    self.add_entry(entry)
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 682, in add_entry
    for dist in find_distributions(entry, True):
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 2080, in find_eggs_in_zip
    if metadata.has_metadata('PKG-INFO'):
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1610, in has_metadata
    return self.egg_info and self._has(self._fn(self.egg_info, name))
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1968, in _has
    return zip_path in self.zipinfo or zip_path in self._index()
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1848, in zipinfo
    return self._zip_manifests.load(self.loader.archive)
  File "c:\python27\lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 1788, in load
    mtime = os.stat(path).st_mtime
WindowsError: [Error 2] The system cannot find the file specified: 'c:\\python27\\lib\\site-packages\\pyasn1-0
.1.7-py2.7.egg'

comment:28 follow-up: Changed at 2016-02-09T18:38:58Z by warner

It looks like the enthusiastically-long pycryptopp version string is causing a shutil.copy() call to exceed the windows maximum pathname length. It's exacerbated by the string being used twice (in some sort of $PKGVER.tmp/../$PKGVER syntax). It's possible that this could be fixed in setuptools, but it might also mean that zooko has to give up his beloved versioning scheme.

We don't yet know what's going on with the pyasn1 error.

comment:29 Changed at 2016-02-09T18:53:32Z by warner

  • Milestone changed from 1.11.0 to 1.10.3

At today's meeting we decided to (at least provisionally) include this in the next release. It fixes #2728, which is probably a blocker, and should help reduce the need for a compiler, which has always been a problem on windows. It'd also close about half our outstanding "packaging" tickets.

There are other steps necessary if we really do include this:

  • rename the release from 1.10.3 to 1.11.0, since this is a big change
  • update the buildbot to exercise the virtualenv-style build
  • rent/configure/maintain a windows buildslave to test this properly (using personal machines is great, but may not reflect the lowest-common-denominator target system accurately)
  • change the docs:
    • guide source-tree users to use a virtualenv and pip install --editable .
    • install-it users who aren't using OS packages should do pip install allmydata-tahoe and get the version from PyPI
      • this might prompt us to rename the distribution from allmydata-tahoe to tahoe-lafs (#2011, but not #1950)

I'll assemble a branch with proposed docs changes, and will look into the buildbot changes.

comment:30 Changed at 2016-02-09T19:00:00Z by warner

Packaging tickets that would probably be closed if we land this: #709 #717 #799 #1270 #1403 #1450 #1451 #1504 #1896 #2044 #2221 #2728 #1168 #1753 #2021 #2077 #2210 #2255 #2283 #2286 #2306 #2317 #2468 #2473 #2474 #657

Tickets that would not be closed, but would become a lot easier to resolve: #1220 #1244 #1343 #2055 #2475 #1342 #142

comment:31 Changed at 2016-02-09T19:02:52Z by glyph

Do you have any 32-bit Windows users? I notice that Twisted is presently only shipping a wheel for Windows, and only for 64-bit. We could probably do a bit better here and ship 32-bit Windows wheels and OS X wheels as well.

Also: it's not causing any problems right now, but you'll probably be pleased to know that in Twisted trunk right now, we've removed PyCrypto? as a dependency, and are now doing everything in conch with cryptography. We still need to get rid of pyOpenSSL but at least we only have one backend now. (Once we get rid of the dependency on OpenSSL's TLS specifics, which is a goal that's in sight now, we might even be able to have a cryptography backend that pulls from pycryptopp exclusively, modulo just a little dependency-mangling magic on their side...)

comment:32 Changed at 2016-02-16T18:52:15Z by daira

The 1582.setuptools-delenda-est.1 branch is now looking in much better shape on Windows. In a virtualenv:

..\Scripts\activate
python install -e .
python setup.py update_version
tahoe --version-and-path
copy ..\Scripts\tahoe-script.py bin
python ..\Scripts\trial.py allmydata

works for me and passes all tests.

Last edited at 2016-02-16T19:06:43Z by daira (previous) (diff)

comment:33 Changed at 2016-02-16T19:18:24Z by daira

As I suspected, Unicode command-line support on Windows is broken on this branch. It works fine if you use python tahoe-script.py ... though; the problem is just the tahoe.exe executable generated by setuptools not passing through arguments correctly (see #565 and #1074).

comment:34 Changed at 2016-02-16T23:50:10Z by glyph

daira, I looked for a bug on the setuptools tracker ( https://bitbucket.org/pypa/setuptools/issues?status=new&status=open ) and could not find unicode command-line arguments as a bug there. Can you file one?

comment:35 Changed at 2016-03-07T23:12:34Z by rvs

  • Cc vladimir@… added

comment:36 Changed at 2016-03-08T05:27:54Z by warner

BTW, for those visiting this ticket in the future, the original intent was to stop using setuptools, i.e. go back to distutils. This was borne out of frustration with the bad-old-days when setuptools was not being maintained, forks like distribute were rampant, and virtualenv was not yet a thing. Later, setuptools improved for the better, and virtualenv provided a well-supported way of doing the funky custom thing we'd built in Tahoe. So some time around 2014 or 2015, we changed our minds, embraced the new setuptools, and this ticket was changed to be about stopping our use of zetuptoolz (Tahoe's embedded fork of setuptools, by this point horribly horribly ancient).

comment:37 Changed at 2016-03-08T05:55:25Z by glyph

Thanks for the update, warner. Posterity thanks you :). Perhaps we should update the ticket description as well, to clarify the present intention?

comment:38 in reply to: ↑ 28 Changed at 2016-03-08T17:54:13Z by zooko

Replying to warner:

It looks like the enthusiastically-long pycryptopp version string is causing a shutil.copy() call to exceed the windows maximum pathname length.

That's the wrong way to describe this problem. The facts are:

  1. setuptools uses the short-paths Windows API instead of the long-paths Windows API. That's the root of the problem, and it is probably easy to fix (you just prepend \\ or something like that to the paths, and then Windows handles long paths).
  1. Because of this bug, the build will fail whenever the base directory that you're starting in, plus 2 times the name of your package, exceeds 256 bytes (I think).
  1. Therefore, the build will always fail if the base directory that you're starting in has too long of a pathname, and it will always succeed (at least with all current package names), if the base directory you're in has sufficiently short of a pathname.

Therefore, reducing the size of pycryptopp's package name would be a kludge that would only prevent the error in *some* of the cases. Fixes that can fix the problem in all of the cases are:

  1. Build in a directory with a short name, e.g. "C:/build". That is a workaround that anybody can do without changing the code.
  1. Fix setuptools to use the correct Windows API, by prepending \\ or whatever it is to the pathnames before calling shutil.copy().

I'm not going to change the pycryptopp versioning scheme.

comment:39 Changed at 2016-03-08T18:00:13Z by zooko

Here's a way to test whether I'm right about what I said in comment:38:ticket:1582:

  1. Make a directory named 'C:/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'.
  1. chdir into it.
  1. Try to build *any package at all*.

If I'm right, the build will fail, regardless of which package you try to build, because of this bug in setuptools. This is not pycryptopp's problem.

comment:40 Changed at 2016-03-08T18:24:49Z by zooko

If I'm right, then the workaround, whether you're building pycryptopp or any other package is "chdir into a directory with a shorter and shorter name until the build works".

comment:41 Changed at 2016-03-10T06:16:26Z by warner

Moving the setuptools-vs-pycryptopp issue to #2739 .

comment:42 Changed at 2016-03-15T17:54:21Z by Daira Hopwood <daira@…>

  • Resolution set to fixed
  • Status changed from new to closed

In d8549a2/trunk:

setuptools delenda est. fixes ticket:1582 :-D

Signed-off-by: Daira Hopwood <daira@…>

comment:43 Changed at 2016-03-15T17:54:23Z by Daira Hopwood <daira@…>

In 389efdf/trunk:

Delete "develop --prefix=supprt make_executable" from [aliases] in setup.cfg. refs ticket:1582

Signed-off-by: Daira Hopwood <daira@…>

comment:44 Changed at 2016-03-15T17:54:23Z by Daira Hopwood <daira@…>

In aa8a5be/trunk:

On Windows we need pypiwin32. refs ticket:1582

Signed-off-by: Daira Hopwood <daira@…>

comment:45 Changed at 2016-03-15T17:54:23Z by Daira Hopwood <daira@…>

In fe360ee4/trunk:

Fix tests that were incorrectly skipping due to not being able to find the 'tahoe' script.
TODO: this may have broken testing "frozen" builds.
refs ticket:1582

Signed-off-by: Daira Hopwood <daira@…>

comment:47 follow-up: Changed at 2016-03-15T18:27:02Z by daira

Zetuptoolz is no more!!11!1 \o/

comment:48 in reply to: ↑ 47 Changed at 2016-03-15T18:51:37Z by glyph

Replying to daira:

Zetuptoolz is no more!!11!1 \o/

🎉

comment:49 Changed at 2016-03-15T18:57:40Z by cypher

👍

comment:50 Changed at 2016-03-15T19:00:09Z by glyph

Thank you to everyone who participated in this issue, especially daira, who I know suffered greatly on the torturous path to this eventual, glorious resolution :-).

comment:51 Changed at 2016-03-22T05:03:36Z by warner

  • Milestone changed from 1.10.3 to 1.11.0

Milestone renamed

Note: See TracTickets for help on using tickets.