Setting up and maintaining a C++ development environment has always been more difficult than for newer languages, especially once third party dependencies are involved, but in the last few years the ecosystem has improved to the point where it’s possible to create a project that can bootstrap a cross-platform development environment just by opening it with an editor that supports cmake or with a single command in the terminal.
When using vcpkg on projects with many or large dependencies, a large portion of your total build time can be just from building these dependencies even though the resulting artifacts don’t change between compiles.
CMake is a cross-platform utility that abstracts your C++ projects across a wide array of operating systems, compiler toolchains, and build tools. While supported by popular editors such as Visual Studio, VSCode, and CLion, there hasn’t been any way to specify build variants and toolchain options in a cross-editor fashion.
As much as I understand why static linking everything is becoming the norm, I feel a little frustrated since I’ve found using shared libraries and dynamically loaded libraries to be incredible useful for managing complexity in large applications.
VcpkgManifest
I wrote a small powershell module to handle manipulating vcpkg manifest files.
Check it out here: https://github.com/Chemiseblanc/VcpkgManifest
Responsive Desktop Design
I’ve noticed that one of the coincidental beneficiaries of responsive web design is tiled window layouts.
So after much confusion, I finally understand that the components related to install() statements are unrelated to the components of find_package(). The former being related to the –component flag of cmake –install and the later being closer related to export sets and (Package)Config.cmake
Old by M. Night Shyamalan.
Something that could only be expected by the director of Avatar (2010)
Costume Hunting Woes
No luck after three stores over five hours and I’ve learned my lesson about looking for a costume the week before Halloween until the next time I forget it.
In object oriented programming, factory patterns are common design patterns for object creation.
Online I’ve found some explanations of them lacking and often confused with a different concept entirely.
In this post I’m going to try and clarify the differences between these patterns and concepts and the purposes behind them.
I decided to give my long neglected homepage a makeover (ignoring my other long neglected websites) but instead of just picking
something interesting from the Hugo theme list I decided to go all in and make a new theme from scratch.