Some updates to the documentation regarding Python 3 and wxPython 4.

This work is not complete and the install and build instructions need to be sanity checked and updated for modern versions of all three platforms.
This commit is contained in:
Cas Cremers 2020-10-28 08:41:44 +01:00
parent f68d52fba5
commit 7c00ddb2a9
5 changed files with 15 additions and 32 deletions

View File

@ -16,7 +16,7 @@ Windows and MAC OS X should be equally feasible. Note that the below
instructions are written from a Linux/Ubuntu perspective, and probably instructions are written from a Linux/Ubuntu perspective, and probably
need modifications for other platforms. need modifications for other platforms.
Scyther is written partly in Python 2 (for the GUI, using wxPython) and Scyther is written partly in Python 3 (for the GUI, using wxPython) and
partly in C (for the backend). partly in C (for the backend).
In order to run the tool from a repository checkout, it is required to In order to run the tool from a repository checkout, it is required to

View File

@ -41,35 +41,20 @@ from the command line) then you need only the first.
3. ### wxPython libraries ### 3. ### wxPython libraries ###
The GUI user interface uses the wxPython libraries. The GUI user interface uses the wxPython libraries.
The recommended way of installing is through `pip` and described this page:
http://www.wxpython.org/download.php https://www.wxpython.org/download.php
There are many different wxPython packages. You should choose a 32-bit This version of Scyther requires at least **wxPython 4.0**. Note that older versions of Scyther did not work with wxPython 4.
package that matches your Python version (e.g., 2.7). It is
recommended to select the unicode version from the stable releases.
As of writing (May 2013) the following links lead to the appropriate For Ubuntu users, it is important to add an additional parameter, e.g., for Ubuntu 20.04, the recommended pip install is:
wxPython packages for Python 2.7:
* **Windows**
http://downloads.sourceforge.net/wxpython/wxPython2.8-win32-unicode-2.8.12.1-py27.exe
* **Mac OS X**
http://downloads.sourceforge.net/wxpython/wxPython2.8-osx-unicode-2.8.12.1-universal-py2.7.dmg
Note that this package is in an old format and you will probably
get a warning "Package is damaged". This can be resolved by:
```
$ sudo installer -pkg /Volume/.../wxPython2.8-osx-unicode-universal-py2.7.pkg/ -target /
```
* **Ubuntu/Debian Linux**
http://wiki.wxpython.org/InstallingOnUbuntuOrDebian
```
$ sudo apt install python-pip
$ pip install -U \
-f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-20.04 \
wxPython
```
Running Scyther Running Scyther
--------------- ---------------
@ -78,13 +63,13 @@ Extract the Scyther archive and navigate to the extracted directory.
Start Scyther by executing the file Start Scyther by executing the file
scyther-gui.py `scyther-gui.py`
in the main directory of the extracted archive. in the main directory of the extracted archive.
* **Mac OS X** * **Mac OS X**
Right-click the file 'scyther-gui.py' and select "Open with" and Right-click the file `scyther-gui.py` and select "Open with" and
then "Python Launcher". then "Python Launcher".

View File

@ -396,7 +396,6 @@ class Scyther(object):
self.guessFileNames(spdl=spdl) self.guessFileNames(spdl=spdl)
# Generate temporary files for the output. # Generate temporary files for the output.
# Requires Python 2.3 though.
(fde,fne) = tempfile.mkstemp() # errors (fde,fne) = tempfile.mkstemp() # errors
(fdo,fno) = tempfile.mkstemp() # output (fdo,fno) = tempfile.mkstemp() # output
if spdl: if spdl:

View File

@ -37,7 +37,7 @@ import sys
# Check for cElementTree presence. Otherwise use ElementTree. # Check for cElementTree presence. Otherwise use ElementTree.
useiter = True useiter = True
try: try:
# python 2.5 has cElementTree in the core # cElementTree is in Python since version 2.5
import xml.etree.cElementTree as cElementTree import xml.etree.cElementTree as cElementTree
except: except:
# try the old way # try the old way

View File

@ -35,7 +35,7 @@ interface of Scyther.
The [wxPython] packages can be found at http://www.wxpython.org/ The [wxPython] packages can be found at http://www.wxpython.org/
Ubuntu users: the wxPython packages are called 'python-wxgtk' followed by the Ubuntu users: the wxPython packages are called 'python-wxgtk' followed by the
version number.""" version number. This version of Scyther requires at least wxPython version 4.0."""
elif ('32-bit mode' in str(err)) or ('no matching architecture' in str(err)): elif ('32-bit mode' in str(err)) or ('no matching architecture' in str(err)):
import os import os
@ -92,7 +92,6 @@ The exact error was:
""" % (errmsg,err)) """ % (errmsg,err))
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
global WXPYTHON4 global WXPYTHON4
global WXPYTHONINFREQ global WXPYTHONINFREQ