diff options
author | rahulp13 | 2020-02-20 16:11:56 +0530 |
---|---|---|
committer | rahulp13 | 2020-02-20 16:11:56 +0530 |
commit | 295534960d75ac94c5f50fd9a6a3cecfc48c0f12 (patch) | |
tree | c497e49f5638cb4f1fcdb5d12ef13e74ccd1a95e /Debian/readme.md | |
parent | 73ac34b39b95356f49ca833b071e7cb5c9f6a25f (diff) | |
download | nghdl-295534960d75ac94c5f50fd9a6a3cecfc48c0f12.tar.gz nghdl-295534960d75ac94c5f50fd9a6a3cecfc48c0f12.tar.bz2 nghdl-295534960d75ac94c5f50fd9a6a3cecfc48c0f12.zip |
packaging with pyinstaller
Diffstat (limited to 'Debian/readme.md')
-rw-r--r-- | Debian/readme.md | 68 |
1 files changed, 64 insertions, 4 deletions
diff --git a/Debian/readme.md b/Debian/readme.md index 629ef92..e35bcb2 100644 --- a/Debian/readme.md +++ b/Debian/readme.md @@ -1,12 +1,72 @@ -Ubuntu Installer Documentation +NGHDL Installer (Ubuntu) ==== -It contains all the documenation for installers on Ubuntu 14.04 and above. -Separate installers are required to resolve dependencies only of GHDL and are mentioned below. +It contains all the documenation for making NGHDL executable (using PyInstaller) and NGHDL Installation Script on Ubuntu 14.04 and above. +Separate installers are required to resolve dependencies only for GHDL and are mentioned below. -## Differences in Ubuntu 14.04, Ubuntu 16.04 and above installers: +## NGDHL EXECUTABLE: + +1. Download `virtualenv` package as: + + $ pip install virtualenv + +2. Create a virtual environment as: + + $ virtualenv -p /usr/bin/python3 nghdl + +3. Activate the virtual environment as: + + $ source nghdl/bin/activate + +4. Install all Python dependencies for eSim within the virtual environment as: + + $ pip install pyinstaller + $ pip install --upgrade 'setuptools<45.0.0' + $ sudo apt install build-essential python3-dev libqt4-dev qt4-dev-tools + $ mkdir nghdl/build + $ cd nghdl/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. Now uninstall PyQt4, sip, matplotlib, numpy, dateutil and cycler globally (if any). + +6. Test whether only nghdl dependencies are available or not: + + $ pip freeze + +> Note : Following dependencies should be available - +> - PyQt4 +> - sip + +7. Create spec file as: + + $ pyi-makespec --onefile <path_to_nghdl>/src/ngspice_ghdl.py + +8. Add `PyQt4.sip` as hiddenimports in the generated spec file. + +9. Change the `exe` name field to `nghdl` in the generated spec file. + +10. Create onefile executable using pyinstaller as: + + $ pyinstaller -F --clean Application.spec + +11. Verify whether all `*.py` files have been included in `Analysis-00.toc` file under the build folder generated by PyInstaller. + + + +## Differences in Ubuntu 14.04, Ubuntu 16.04 and above installers (w.r.t GHDL): 1. Dependency on gnat : - Ubuntu 14.04 : gnat (v4.6) - Ubuntu 16.04 : gnat-5 (v5.4) |