Skip to content

cplusplus/draft

Folders and files

NameName
Last commit message
Last commit date
Mar 21, 2025
Mar 15, 2025
Mar 21, 2025
Mar 21, 2025
Feb 17, 2014
Mar 14, 2019
Nov 20, 2024
Jul 23, 2023

Repository files navigation

C++ Standard Draft Sources

These are the sources used to generate drafts of the C++ standard. These sources should not be considered an ISO publication, nor should documents generated from them unless officially adopted by the C++ working group (ISO/IEC JTC1/SC22/WG21).

Get involved:

More information about the C++ standard can be found at isocpp.org.

Getting Started on Mac OS X

Install the MacTeX distribution.

If you are on a slow network, you'll want to get the BasicTeX package instead, then run the following command to install the other packages that the draft requires:

sudo tlmgr install latexmk isodate substr relsize ulem fixme rsfs extract layouts enumitem l3packages l3kernel imakeidx splitindex xstring

Getting Started on Debian-based Systems

Install the following packages:

sudo apt-get install latexmk texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended lmodern

Getting Started on Fedora

Install the following packages:

dnf install latexmk texlive texlive-isodate texlive-relsize texlive-ulem texlive-fixme texlive-extract texlive-l3kernel texlive-l3packages texlive-splitindex texlive-imakeidx

Getting Started on Arch Linux

Install the following packages:

pacman -S make texlive-latexextra texlive-binextra texlive-plaingeneric texlive-fontsrecommended

Getting Started on Microsoft Windows

Install Perl (for example, using a Cygwin installation and adding perl. See sample instructions for more details)

Install MiKTeX

Instructions

To typeset the draft document, from the source directory run:

make

That's it! You should now have an std.pdf containing the typeset draft.

Generated input files

To regenerate figures from .dot files, run:

make <pdfname>

For example:

make figvirt.pdf

Acknowledgements

A great deal of gratitude goes out to Pete Becker for his amazing work in the original conversion of the C++ standard drafts to LaTeX, and his subsequent maintenance of the standard drafts up to C++11. Thank you Pete.

Thanks to Walter Brown for suggesting the use of latexmk.