Skip to main content

Issue with installing python-axolotl or python-axolotl-curve25519 on Windows

It is peeve amazing how many hours get burnt while trying to resolve simple package dependency issues. I may be too dumb to proffer a lasting one-fits-all solution to all dependency issues, but I got this issue fixed in my own case.

Problem Description:
The python-axolotl library requires certain dependencies that are not properly managed when installing libraries via a command line's requirement.txt file.

I got real help by reading through this link below, but this page might be more helpful when it comes to detailed instructions.
Actual instructions: https://github.com/tgalal/python-axolotl

Typical errors might look like the following:

1. In this case, missing library(s). Libraries needed for compiling some python resources. Unfortunately, http://aka.ms/vcpython27 has been decommissioned because Python2x is EOL. You can still get the VcPython27 from an archive at https://web.archive.org/web/20210106040222/download.microsoft.com/download/7/9/6/796EF2E4-801B-4FC4-AB28-B59FBF6D907B/VCForPython27.msi
error: command 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status 2

    ----------------------------------------
Command "C:\Users\Administrator\AppData\Local\Continuum\Anaconda2\envs\swdb\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\justink\\appdata\\local\\temp\\pip-yja6cx-build\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record c:\users\justink\appdata\local\temp\pip-f0cy1o-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in c:\users\justink\appdata\local\temp\pip-yja6cx-build\


2. In this case, there is a missing file in the package discussed above (VCForPython27.msi). Copy the file at this URL: https://github.com/mattn/gntp-send/blob/master/include/msinttypes/stdint.h
and paste it in C:\Users\Administrator\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\include\
curve/curve25519-donna.c(49) : fatal error C1083: Cannot open include file: 'stdint.h': No such file or directory
  error: command 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status 2 

Note: As a requirement, the authors of python-axolotl require that MinGW (plus GCC) and Zlib must be installed. The next instructions will guide you on How to get this done.

3. To download MinGW for windows(MinGW-get-setup.exe), I suggest this link
https://osdn.net/projects/mingw/releases/
This is just an installation manager for MinGW. After installation, the manager will provide different variants and we shall install the necessary variant.

4. Add MinGW to environment variables
e.g Add C:\MinGW\bin to environment variables

5. Create a new file named distutils.cfg, put this new file in the Lib/distutils folder of your python installation e.g C:\python27\Lib\distutils.
inside this file add these 2 lines and save:
[build]
compiler=mingw32

6. Open a new instance of the Command prompt and run this command, Remember what I said about variants? here it is...

mingw-get.exe install gcc
Note: due to some spaces in my Docker path variables, My system was unable to see the MinGW path so, I appended the MinGW to the beginning of the Path string. Another way is to open the CMD and navigate to the bin directory of MinGW.


7. download a version of Zlib, I suggest using this link
http://gnuwin32.sourceforge.net/packages/zlib.htm


Now you can resume any previous installation of python-module or libraries that were failing previously.

Examples of installs affected by these are:

https://github.com/PyWaves/PyWaves/issues/59
https://github.com/romanzaikin/BurpExtension-WhatsApp-Decryption-CheckPoint/issues/1
https://github.com/mukulhase/WebWhatsapp-Wrapper/issues/211

Let me know if there are other things I might have left out, or perhaps one of the links is broken. It will help someone someday. There are quite a few other things I did while trying to resolve this issue, but I count them as insignificant, if your case seems a bit different, let me know, I could be of help.


If there is something not right with this article, please I would like to know. feel free to drop a comment, all kinds of comments are welcomed but the nice ones are well appreciated and no comment will be ignored.

Comments

Popular Articles

[SOLVED] Linux - Issues installing Docker on Ubuntu - libseccomp2 version 2.3.1 installed but 2.4 required

This article has been improved for a better understanding - goto  https://splashcoder.blogspot.com/2023/07/installing-docker-on-ubuntu-1804-solved.html There is a possibility that you are trying to install docker. There is a very comprehensive guide at https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository. The linked guide serves as a reference for this article. We try to address the common errors in this article. Just so you won’t have to scour the entire answers on StackOverflow. Step 1: The first thing is to run our famous "apt update" command. So run the command below. sudo apt-get update You may observe that there are some errors. And YES! we are using a fairly old Ubuntu 18.04 Bionic Beaver Release. It seems perfect for this as most people have issues installing docker anyways. To resolve this, you may refer to  Configure DNS server IP to resolve errors with apt-get update Step 2: Following the Docker article, we should run the commands below. sudo...

VS CODE: Unable to install extensions on Ubuntu/Linux

Hey, its one of those days, i just wished i could code away the night. i decided that tonight, it was going to be VS Code all through. I closed Sublime text. It was not long before I started missing the php code linting and ever intelligent code completions that were built into sublime text. I checked the suggestions on the Extensions Tab of VS Code. and there it was! Felix Becker's "PHP IntelliSense" package. To my cute surprise, Upon clicking, the extension's description and Installation "Read Me" could not display correctly, 'twas as good as blank. All i could see was this: I thought, this is something light, so i started searching but then it was not better explained except for the GitHub issue which I found to be useful, Link is at the bottom of this page.  I hate to discover it was a DNS issue. How to detect the Issue Simply visit the URL below, if you are able to view the image on the page, then you are not affected by this issue. DNS Test URL: ht...