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
CPack
Search
Mike McQuaid
February 29, 2012
Programming
2
2.2k
CPack
Cross-platform packaging with CPack.
Presented at the Gran Canaria Desktop Summit in 2009.
Mike McQuaid
February 29, 2012
Tweet
Share
More Decks by Mike McQuaid
See All by Mike McQuaid
Package Management Learnings from Homebrew
mikemcquaid
0
210
What happened to RubyGems and what can we learn?
mikemcquaid
0
250
Ruby on (Guard)Rails
mikemcquaid
0
180
Workbrew - Homebrew for Mac Admins
mikemcquaid
1
220
Using "modern" Ruby to build a better, faster Homebrew
mikemcquaid
3
5.1k
Homebrew's Evolution
mikemcquaid
0
230
Open Source: boundaries, burnout, business
mikemcquaid
0
600
Homebrew’s Great Migration: moving to GitHub Packages with zero downtime
mikemcquaid
0
570
Building effective relationships
mikemcquaid
0
240
Other Decks in Programming
See All in Programming
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
20
6.9k
CSC307 Lecture 07
javiergs
PRO
0
550
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
Oxlint JS plugins
kazupon
1
810
dchart: charts from deck markup
ajstarks
3
990
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
250
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
400
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
450
AI時代の認知負荷との向き合い方
optfit
0
150
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
0
930
組織で育むオブザーバビリティ
ryota_hnk
0
170
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
660
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
180
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
320
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Bash Introduction
62gerente
615
210k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
So, you think you're a good person
axbom
PRO
2
1.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
820
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
We Are The Robots
honzajavorek
0
160
Transcript
CPack Mike Arthur
Written software?
Written cross-platform software?
Packaged software?
Packaged cross-platform software?
#ifdef WIN32 MFCYuck(2, 9, 1, &_PUKE); #endif #ifdef APPLE id
CocoaNonsense = [UnnecessaryBling sparkle]; #endif #ifdef LINUX X11SpribbleJurop w2_hojed = XJurop(3, wizzle, &apolty); #endif
:’(
Qt
QSomethingNice phew = QCrossPlatform(Qt::Easy);
:D
EXE + ZIP + DMG + APP + DEB +
RPM + TGZ + TBZ2 + ....
Different Components
ssh windows makeInstall.bat ... zip ... ssh osx hdiutil ...
makeBundle.sh ... ssh linux debbuild ... rpmbuild ... tar ...
CPack
(CMake +) CPack
Windows
None
OS X
None
None
Linux
dpkg -i MendeleyDesktop.deb rpm -i MendeleyDesktop.rpm
Step One
include(CPack)
Step Two
Step Two
Charm-0.1.1-Darwin.dmg Charm-0.1.1-Darwin.sh Charm-0.1.1-Darwin.tar.gz
None
None
None
set(CPACK_PACKAGE_VERSION_MAJOR 1) set(CPACK_PACKAGE_VERSION_MINOR 3) set(CPACK_PACKAGE_VERSION_PATCH 0)
None
set(CPACK_GENERATOR “PackageMaker”)
Easy?
1) Variables
2) Graphics
3) Dependencies
Linked libraries?
GetPrerequisites.cmake
Runtime libraries? External executables?
:(
4) Limitations
5) Patch
6) Ask
Mailing list Mike
Questions?