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
Jace Browning
September 19, 2016
Programming
0
91
Standalone Python Programs using PyInstaller
A talk on Python packaging and PyInstaller given at GRPUG.
Jace Browning
September 19, 2016
Tweet
Share
More Decks by Jace Browning
See All by Jace Browning
HTMX + Django
jacebrowning
0
150
Python Packaging and Distribution
jacebrowning
0
79
Best Practices for Automated Regression Testing
jacebrowning
0
140
Skillet pitch at Startup Weekend
jacebrowning
0
190
Continuous Deployment using GitHub, CircleCI, and Heroku
jacebrowning
0
180
Intro to Make
jacebrowning
0
62
Juicy Slices of Testing
jacebrowning
0
120
Continuous Deployment: Biography of a Feature Request
jacebrowning
0
100
From Code to Production
jacebrowning
0
99
Other Decks in Programming
See All in Programming
Scaling your build logic
antalmonori
1
130
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.5k
為你自己學 Python
eddie
0
530
2025.01.17_Sansan × DMM.swift
riofujimon
2
630
最近のVS Codeで気になるニュース 2025/01
74th
1
230
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
970
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
3.4k
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
180
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
140
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
230
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
1
190
Rubyでつくるパケットキャプチャツール
ydah
0
340
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
370
Writing Fast Ruby
sferik
628
61k
How GitHub (no longer) Works
holman
312
140k
A designer walks into a library…
pauljervisheath
205
24k
What's in a price? How to price your products and services
michaelherold
244
12k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Making the Leap to Tech Lead
cromwellryan
133
9k
Gamification - CAS2011
davidbonilla
80
5.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Embracing the Ebb and Flow
colly
84
4.5k
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!