failing to build a windows python38 wheel
Robin Becker <[email protected]> Tue, 29 Oct 2019 12:53:33 +0000
| Newsgroups | gmane.comp.python.distutils.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, I am trying to use the technique of pillow to pre-emptively build windows 38 wheel for x_64 and also i686.
I used https://github.com/matthew-brett/multibuild/blob/devel/install_python.ps1 as a starting point, but made the
version stuff explicit so my install ps1 looks like
> # Install specified Python version.
> # Install only if:
> # Our current matrix entry uses this Python version AND
> # Python version is not already available.
> Write-Host "install_python.ps1 PYTHON=Python${env:PYVER}" -ForegroundColor Yellow
>
> $PYTHON="C:\Python${env:PYVER}"
> $py_exe = "${PYTHON}\Python.exe"
> Write-Host "py_exe: ${py_exe}" -ForegroundColor Yellow
>
> if ( [System.IO.File]::Exists($py_exe) ) {
> Write-Host "${py_exe} apparently exists" -ForegroundColor Red
> exit 0
> }
> if ($PYTHON -eq "C:\Python38-x64") {
> $exe_suffix="-amd64"
> $req_ver="3.8.0"
> $req_dir="3.8.0"
> } elseif ($PYTHON -eq "C:\Python38") {
> $exe_suffix=""
> $req_ver="3.8.0"
> $req_dir="3.8.0"
> } else {
> Write-Host "python undiscovered" -ForegroundColor Red
> exit 0
> }
>
> $py_url = "https://www.python.org/ftp/python"
> Write-Host "Installing Python ${req_ver}$exe_suffix..." -ForegroundColor Yellow
> $exePath = "$env:TEMP\python-${req_ver}${exe_suffix}.exe"
> $downloadFile = "$py_url/${req_dir}/python-${req_ver}${exe_suffix}.exe"
>
> Write-Host "exePath=${exePath} downloadFile=${downloadFile}"
>
> Write-Host "Downloading $downloadFile..."
> (New-Object Net.WebClient).DownloadFile($downloadFile, $exePath)
> Write-Host "Installing..."
> cmd /c start /wait $exePath /quiet TargetDir="$PYTHON" Shortcuts=0 Include_launcher=0 InstallLauncherAllUsers=0
> Write-Host "Python ${req_ver} installed to $PYTHON"
>
> echo "$(& $py_exe --version 2> $null)"
the appveyor log reoports this as working so there I see this reported
> install_python.ps1 PYTHON=Python38-x64
> py_exe: C:\Python38-x64\Python.exe
> Installing Python 3.8.0-amd64...
> exePath=C:\Users\appveyor\AppData\Local\Temp\1\python-3.8.0-amd64.exe downloadFile=https://www.python.org/ftp/python/3.8.0/python-3.8.0-amd64.exe
> Downloading https://www.python.org/ftp/python/3.8.0/python-3.8.0-amd64.exe...
> Installing...
> Python 3.8.0 installed to C:\Python38-x64
> Python 3.8.0
I then used this python to build a reportlab wheel; that was reported as
C:\projects\reportlab\dist\reportlab-3.5.32-cp38-cp38m-win_amd64.whl
I loaded this wheel onto a windows 10 machine which reports itself as 64-bit OS x64-based processor
I installed Python 3.8 and used it to create a virtualenv; the venv python reports itself as Python 3.8.0 (64-bit), but
when run it says Python 3.8.0 ........ [MSC v.1916 64 bit (AMD64)] on win32
The real problem is that the virtualenv pip wuill not install my wheel the error says
ERROR: reportlab-3.5.32-cp38-cp38m-win_amd64.whl is not a supported wheel on this platform.
I have already built reportlab-3.5.32-cp37-cp37m-win_amd64.whl as part of the standard appveyor process and that
installs fine into a virtualenv built for Python 3.7.5.
I am slightly mystified can anyone suggest what I am doing wrong?
--
Robin Becker
--
Distutils-SIG mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/distutils-sig.python.org/
Message archived at https://mail.python.org/archives/list/[email protected]/message/3JVKH2WNWQQSNXLASR3J7UVJYFQJULNJ/