Skip to content

Instantly share code, notes, and snippets.

@10se1ucgo
Created February 24, 2016 01:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 10se1ucgo/65ee42ad2fdc59091c6e to your computer and use it in GitHub Desktop.
Save 10se1ucgo/65ee42ad2fdc59091c6e to your computer and use it in GitHub Desktop.
Compiling wxPython Phoenix for Python 3.5
diff --git a/build.py b/build.py
index d084d52..ca0fbe6 100755
--- a/build.py
+++ b/build.py
@@ -239,7 +239,7 @@ def setPythonVersion(args):
#
TOOLS = os.environ.get('TOOLS')
if 'cygdrive' in TOOLS:
- TOOLS = runcmd('c:/cygwin/bin/cygpath -w '+TOOLS, True, False)
+ TOOLS = runcmd('cygpath -w '+TOOLS, True, False)
use64flag = '--x64' in args
if use64flag:
args.remove('--x64')
@@ -703,12 +703,12 @@ def _doDox(arg):
if isWindows:
doxCmd = doxCmd.replace('\\', '/')
- doxCmd = runcmd('c:/cygwin/bin/cygpath -u '+doxCmd, True, False)
+ doxCmd = runcmd('cygpath -u '+doxCmd, True, False)
os.environ['DOXYGEN'] = doxCmd
os.environ['WX_SKIP_DOXYGEN_VERSION_CHECK'] = '1'
d = posixjoin(wxDir(), 'docs/doxygen')
d = d.replace('\\', '/')
- cmd = 'c:/cygwin/bin/bash.exe -l -c "cd %s && ./regen.sh %s"' % (d, arg)
+ cmd = 'bash.exe -l -c "cd %s && ./regen.sh %s"' % (d, arg)
else:
os.environ['DOXYGEN'] = doxCmd
os.environ['WX_SKIP_DOXYGEN_VERSION_CHECK'] = '1'
diff --git a/buildtools/config.py b/buildtools/config.py
index 1232afe..44fece4 100644
--- a/buildtools/config.py
+++ b/buildtools/config.py
@@ -850,6 +850,8 @@ def getVisCVersion():
return '90'
if 'Version 16' in text:
return '100'
+ if 'Version 19' in text:
+ return '140'
# TODO: Add more tests to get the other versions...
else:
return 'FIXME'
diff --git a/ext/wxWidgets b/ext/wxWidgets
--- a/ext/wxWidgets
+++ b/ext/wxWidgets
@@ -1 +1 @@
-Subproject commit 20b4aa2ef9524b3801071f2a536f251c8c9ce8dc
+Subproject commit 20b4aa2ef9524b3801071f2a536f251c8c9ce8dc-dirty
diff --git a/wscript b/wscript
index 83aba8a..33116fc 100644
--- a/wscript
+++ b/wscript
@@ -9,6 +9,7 @@
import sys
import os
+import distutils.msvc9compiler
import buildtools.config
cfg = buildtools.config.Config(True)
@@ -69,10 +70,7 @@ def configure(conf):
# be selected before the Python stuff can be configured, but we need
# Python to know what version of the compiler to use.
# TODO: Fix this
- msvc_version = '9.0' #conf.options.msvc_ver
- if conf.options.python and ('33' in conf.options.python or
- '34' in conf.options.python):
- msvc_version = '10.0'
+ msvc_version = str(distutils.msvc9compiler.get_build_version())
conf.env['MSVC_VERSIONS'] = ['msvc ' + msvc_version]
conf.env['MSVC_TARGETS'] = [conf.options.msvc_arch]
diff --git a/build/tools/build-wxwidgets.py b/build/tools/build-wxwidgets.py
index 32fa04c..4a5cb3e 100755
--- a/build/tools/build-wxwidgets.py
+++ b/build/tools/build-wxwidgets.py
@@ -70,6 +70,8 @@ def getVisCVersion():
return '90'
if 'Version 16' in text:
return '100'
+ if 'Version 19' in text:
+ return '140'
# TODO: Add more tests to get the other versions...
else:
return 'FIXME'
@10se1ucgo
Copy link
Author

You'll need mingw or msys(2) or cygwin installed and added to your PATH. Also be sure that make is installed (on msys2)

My compile command (pylauncher)

py -2 build.py dox etg --nodoc sip build --python=C:\Python35\python.exe

Alternatively, a wheel for CPython 3.5 x64 users

@10se1ucgo
Copy link
Author

New wheel for CPython 3.5 x64 with the latest fixes and additions.

@10se1ucgo
Copy link
Author

As of about 5-6 days ago, this is no longer required.
In fact, the buildbot now produces CPython 3.5 wheels. You can find them at http://wxpython.org/Phoenix/snapshot-builds/?C=M;O=D

Install with pip

pip3 install -U --pre --trusted-host wxpython.org -f http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment