This blog post is a continuation of C++ Libraries — Part I: Design

In this part, we’ll go over the basics of creating a C++ library.

II. Techniques for creating code for a C++ library

C++ provides multiple ways to create the library code:

(I) and (IV) can be packaged into a package (.o / .a / .so), whereas (II) and (III) have to be provided as source code.

III. Techniques for packaging the library code

(Notice: The rest of the blog will explain the technical details of creating a library. The examples and instructions assume a Linux-based OS using CMake tool, Windows-based OS have a very similer process)

As mentioned in detail in the “Code…


This blog post goes over the basics of creating a C++ library.

It was originally created as a result of questions by a few people, so I decided to create this brief introduction for developers looking to extend their knowledge on libraries in general, and C++ libraries in particular.

This is Part I of a two part blog post, second part can be found here.

If you’re interested in taking your library creation to the next level, this blog post is for you :)

0. What is a library?

“A library is a curated collection of sources of information and similar resources”

Every software engineer…

Inbal Levi

C++ Enthusiast. ISO WG21 member, and head of Israel C++ mirror committee.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store