Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Standalone Python Programs using PyInstaller
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jace Browning
September 19, 2016
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Standalone Python Programs using PyInstaller
A talk on Python packaging and PyInstaller given at GRPUG.
Jace Browning
September 19, 2016
More Decks by Jace Browning
See All by Jace Browning
HTMX + Django
jacebrowning
0
180
Python Packaging and Distribution
jacebrowning
0
110
Best Practices for Automated Regression Testing
jacebrowning
0
170
Skillet pitch at Startup Weekend
jacebrowning
0
210
Continuous Deployment using GitHub, CircleCI, and Heroku
jacebrowning
0
240
Intro to Make
jacebrowning
0
94
Juicy Slices of Testing
jacebrowning
0
150
Continuous Deployment: Biography of a Feature Request
jacebrowning
0
140
From Code to Production
jacebrowning
0
120
Other Decks in Programming
See All in Programming
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.8k
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
830
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
「人を評価する AI」の設計と実装
ryoyanara
0
160
AIが無かった頃の素敵な出会いの話
codmoninc
1
380
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
220
5分で問診!Composer セキュリティ健康診断
codmoninc
0
860
Google Apps Script で Ruby を動かす
kawahara
0
130
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
560
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
500
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
230
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
200
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
250
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
790
Code Reviewing Like a Champion
maltzj
528
40k
What's in a price? How to price your products and services
michaelherold
247
13k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
HDC tutorial
michielstock
2
780
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
520
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.2k
Transcript
Standalone Programs using PyInstaller @JaceBrowning
Outline • State of Python Packaging • Standalone Distribution •
PyInstaller Overview • Demonstration • Work Time!
Interpreted Languages 101 • Code ◦ Modules ◦ Packages •
Interpreter ◦ CPython aka “Python” ◦ Jython ◦ IronPython
State of Python Packaging
The Pieces • setuptools • wheel • twine • pip
Setup Script
Setup Script https://packaging.python.org/distributing https://github.com/pypa/sampleproject
Distributions • Built distribution ◦ ◦ • Source distribution ◦
Upload • Python Package Index ◦ https://pypi.python.org ◦ https://pypi.io (“warehouse”)
• Upload distributions ◦ ◦
Standalone Distribution
So why do it? • Making work tools accessible •
Sharing projects with non-programmers • It’s fun!
Interpreter Embedding • py2exe and py2app • cx_Freeze • PyInstaller
Transcompilation • Nuitka
PyInstaller
Getting PyInstaller • http://www.pyinstaller.org • In general: ◦
Getting PyInstaller • On OS X: ◦ ◦ ◦ ◦
Getting PyInstaller • On linux: ◦ ◦ ◦ ◦ ◦
◦
Quickstart
Specs • Command: ◦ • https://pyinstaller.readthedocs.io/en/stable/spec-files.html
Specs
Options • •
Options • •
Options • •
Building • Command: ◦ • https://github.com/pyinstaller/pyinstaller/wiki/Supported-Packages
Compression • UPX • 5.8 MB:
Demonstration
None
Now you try!