~/talk

“Don't package your libraries, write packagable libraries!”

Talkat CppCon 2018 · 2018-09-23..09-28· [open-source, developer-experience]
links:none on file
slides:none on file

Lessons from packaging over 700+ libraries in vcpkg: prefer mainstream buildsystems (CMake/MSBuild), honor CMake defaults like BUILD_SHARED_LIBS, avoid bespoke config checks and silent optional-dependency fallbacks (OpenSSL/LibreSSL example), don't bundle third‑party trees or hardcode one package manager, avoid header‑only traps that create transitive ODRs (Boost case), support cross builds by separating host toolchains (Protocol Buffers does this), hide Windows.h from public headers and include a standard LICENSE file.

AI-written summary · about

  1. 0:00Introduction
  2. 1:13Overview
  3. 2:15Packaging
  4. 3:17Build systems
  5. 4:17Examples
  6. 5:17Header only is not a panacea
  7. 7:12Build shared lives
  8. 8:52Dont use header checks
  9. 10:11Fragile header checks
  10. 10:54Autoconfiguration
  11. 11:56Dont do this
  12. 12:53Host compilers
  13. 14:21Package managers
  14. 15:21Plugins
  15. 16:01Compiler flags
  16. 17:12Windows RH
  17. 17:54Dont have optional dependencies
  18. 20:35Adopt dependencies quickly
  19. 21:28Version dont replace API
  20. 22:19Polyfills
  21. 23:50API
  22. 24:57Versions
  23. 26:47Patterns
  24. 27:28What are the examples
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.