blob: 320bb1533768cb6848879c7381e600c75a591015 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
eSim Installer (Ubuntu OS)
====
It contains all the documenation for making eSim executable (using PyInstaller) and eSim Installation Script on Ubuntu 14.04 and above.
## eSim Executable:
1. Download `virtualenv` package as:
$ pip install virtualenv
2. Create a virtual environment as:
$ virtualenv -p /usr/bin/python3 eSim
3. Activate the virtual environment as:
$ source eSim/bin/activate
4. Install all Python dependencies for eSim within the virtual environment as:
$ pip install pyinstaller
$ pip install matplotlib
$ pip install tornado
$ pip install --upgrade 'setuptools<45.0.0'
$ sudo apt install build-essential python3-dev libqt4-dev qt4-dev-tools
$ mkdir eSim/build
$ cd eSim/build/
$ wget http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.12.3/PyQt4_gpl_x11-4.12.3.tar.gz
$ wget https://www.riverbankcomputing.com/static/Downloads/sip/4.19.21/sip-4.19.21.tar.gz
$ tar xzvf sip-4.19.21.tar.gz
$ tar xvzf PyQt4_gpl_x11-4.12.3.tar.gz
$ cd sip-4.19.21/
$ python configure.py --sip-module PyQt4.sip
$ make
$ make install
$ cd ../PyQt4_gpl_x11-4.12.3/
$ python configure.py
$ make
$ make install
5. Test whether only eSim dependencies are available or not:
$ pip freeze
> Note : Following dependencies should be available -
> - PyQt4
> - matplotlib
> - numpy
> - dateutil
> - pyparsing
> - six
> - cycler.py
6. Download eSim Manual from eSim website, add it to `library/browser/User-Manual/` and update the file name of Manual in `src/browser/UserManual.py` accordingly.
7. Create spec file as:
$ pyi-makespec --onefile -n eSim <path_to_eSim>/src/frontEnd/Application.py
8. Add `PyQt4.sip` as hiddenimports in the generated spec file.
9. Create onefile executable using pyinstaller as:
$ pyinstaller -F --clean eSim.spec
11. Verify whether all eSim `src` files (`*.py`) have been included in `Analysis-00.toc` file under the build folder generated by PyInstaller.
## How to package eSim?
1. Update `VERSION` file to this release number.
2. Add the installer file in `eSim-<version>` folder.
3. Add the eSim executable file in `eSim-<version>` folder. Also, remove following files from the folder:
- `.git` folder
- `code` folder
- `src` folder
- conf.py
- setup.py
- index.rst
- requirement.txt
- .gitignore
- .travis.yml
4. Add the zip file of `NGHDL` (`nghdl-master.zip`) in the eSim folder.
5. Compress `kicadLibrary` folder to a `tar.xz` format.
6. Compress `eSim-<version>` to a zip format for distribution.
|