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

As mentioned in detail in the “Code composition” section above, generally speaking, there are three main ways for the user to consume the library:


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