PyInstaller: Enable to build stand-alone executables

Usage: After installing Ryu (on virtualenv is better), build a
ryu-manager executable as following:
   $ pip install PyInstaller==3.1.1
   $ cd tools/
   $ pyinstaller ryu-manager.spec
   $ ./dist/ryu-manager

Note: PyInstaller==3.2 may have a bug of str encoding, please use
Pyinstaller==3.1.1 instead.
   https://github.com/pyinstaller/pyinstaller/issues/1976

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
This commit is contained in:
Iwase Yusuke 2016-08-23 14:08:27 +09:00 committed by FUJITA Tomonori
parent db0f6c1165
commit ba1fb5cf06

28
tools/ryu-manager.spec Normal file
View File

@ -0,0 +1,28 @@
# -*- mode: python -*-
block_cipher = None
a = Analysis(['../bin/ryu-manager'],
pathex=['../ryu'],
binaries=None,
datas=None,
hiddenimports=['ryu.controller.ofp_handler'],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='ryu-manager',
debug=False,
strip=False,
upx=True,
console=True)