<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6512283192973413213</id><updated>2025-09-17T01:49:36.571+03:00</updated><category term="C++"/><category term="build"/><category term="cmake"/><title type='text'>memory checkpoints </title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-3552117235682850115</id><published>2015-12-22T00:29:00.002+03:00</published><updated>2015-12-29T13:59:19.247+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="build"/><category scheme="http://www.blogger.com/atom/ns#" term="C++"/><category scheme="http://www.blogger.com/atom/ns#" term="cmake"/><title type='text'>7 generic steps to build any cmakeable C/C++ project</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt; text-align: right;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;“If you build it, CR will come…”&lt;/span&gt;&lt;/div&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt; text-align: right;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;from Motorolans folklore &lt;/span&gt;&lt;/div&gt;
&lt;b id=&quot;docs-internal-guid-7f92d281-c65f-ce44-7536-347db2dbf544&quot; style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Sometimes digging through &lt;/span&gt;&lt;a href=&quot;http://stackoverflow.com/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: transparent; color: #1155cc; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;SO&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, I’ve often saw common questions - “How to build &lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.6667px; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;i&gt;&amp;lt; whatever project &amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; using Visual Studio/MinGW/etc... ???”.&lt;/span&gt;&lt;/div&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;It almost always relates to Windows, because a lot of good software naturally born and developed on Linux/Unix platform, where &lt;/span&gt;&lt;a href=&quot;https://www.gnu.org/software/make/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: transparent; color: #1155cc; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;make utility&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; still the primary tool for managing builds. (... and yes, I know about mingw-make... )&lt;/span&gt;&lt;/div&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;But to my personal opinion, all great software should be cross-platform if possible. &lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 14.6667px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;And here is &lt;/span&gt;&lt;a href=&quot;https://cmake.org/&quot; style=&quot;line-height: 1.38; text-decoration: none;&quot;&gt;&lt;span style=&quot;color: #1155cc; font-family: Arial; font-size: 14.6667px; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;CMake &lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Arial; font-size: 14.6667px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;comes into the scene.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;font-family: Arial; font-size: 14.6667px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;CMake &lt;/span&gt;&lt;a href=&quot;https://www.google.com/trends/explore#q=cmake%2C%20gnu%20make%2C%20scons&amp;amp;cmpt=q&amp;amp;tz=Etc%2FGMT-3&quot; style=&quot;line-height: 1.38; text-decoration: none;&quot;&gt;&lt;span style=&quot;color: #1155cc; font-family: Arial; font-size: 14.6667px; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;gains more and more attention and popularity&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Arial; font-size: 14.6667px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, so major great &lt;a href=&quot;https://en.wikipedia.org/wiki/Open-source_software&quot;&gt;OSS &lt;/a&gt;projects (and commercial) adopting it in their build process. In most cases, but not all, those projects can be built on any platform, where CMake can be run. &lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 14.6667px; line-height: 1.38; white-space: pre-wrap;&quot;&gt;If it’s not true, you’ve always can submit ticket or patch against any build issues.&lt;/span&gt;&lt;/div&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;So here is common steps for building any project which has CMake support.&lt;/span&gt;&lt;/div&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Of course I assume that you’re familiar with:&lt;/span&gt;&lt;/div&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Command line/shell usage on your platform&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Version_control&quot;&gt;VCS&lt;/a&gt; tools, like &lt;a href=&quot;https://git-scm.com/&quot;&gt;git&lt;/a&gt;, &lt;a href=&quot;https://subversion.apache.org/&quot;&gt;svn&lt;/a&gt;, &lt;a href=&quot;https://www.mercurial-scm.org/&quot;&gt;hg &lt;/a&gt;or even old &lt;a href=&quot;http://www.nongnu.org/cvs/&quot;&gt;cvs&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;so below steps should not be surprise to you.&lt;/span&gt;&lt;/div&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;ol style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Clone/checkout/un-pack project to your local storage.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Ensure that project is support cmake build generation. &lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;This can be done by searching for &lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;CMakeLists.txt&lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; file in project sources without cloning (use SCM WebUI). Almost always it can be found in project root folder. If above file is not found - you out of luck, sorry. This post will not help you. But as I’ve already said - you always can submit pull request with basic CMake support. &lt;/span&gt;&lt;a href=&quot;https://cmake.org/documentation/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: transparent; color: #1155cc; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;It is really not that hard&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Create build folder inside project root location. For example &lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;build&lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; and enter it.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Generate build files for project using command&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;cmake &lt;path cmakelists.txt=&quot;&quot; to=&quot;&quot;&gt;&lt;/path&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 14.6667px; line-height: 1.38; white-space: pre-wrap;&quot;&gt;&amp;lt; path to CMakeLists.txt &amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;in our example it just &lt;/span&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;cmake ..&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Build project with command&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;cmake --build .&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Run tests for project&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;ctest -VV&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; list-style-type: decimal; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Install artifacts on your platform&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style=&quot;margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;li dir=&quot;ltr&quot; style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; list-style-type: disc; text-decoration: none; vertical-align: baseline;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;cmake --build . --target install&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/ol&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Is it simple, huh?&lt;/span&gt;&lt;/div&gt;
&lt;b style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Steps 6 and 7 can be optional. Sometimes it just not implemented in project (cmake &lt;/span&gt;&lt;a href=&quot;https://cmake.org/cmake/help/v3.4/command/install.html&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: transparent; color: #1155cc; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;install&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; and &lt;/span&gt;&lt;a href=&quot;https://cmake.org/cmake/help/v3.4/command/enable_testing.html&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: transparent; color: #1155cc; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;test&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; are should be explicitly declared in CMakeLists.txt)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: transparent; color: black; font-family: Arial; font-size: 14.666666666666666px; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Have a nice day and happy building!&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
--
 SN&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/3552117235682850115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/3552117235682850115' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/3552117235682850115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/3552117235682850115'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2015/12/7-generic-steps-to-build-any-cmakeable.html' title='7 generic steps to build any cmakeable C/C++ project'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-578980814779840996</id><published>2009-09-01T16:37:00.001+04:00</published><updated>2009-09-01T16:37:19.471+04:00</updated><title type='text'>September, 1</title><content type='html'>&lt;p&gt;There is important day here in Russia (and I suspect for all other countries). &lt;/p&gt;  &lt;p&gt;This day, all children who became 7 or 6 years old goes to school to their first class.&lt;/p&gt;  &lt;p&gt;Also it is first day of Autumn, which means that Summer is over :-).&amp;#160; &lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/578980814779840996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/578980814779840996' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/578980814779840996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/578980814779840996'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/09/september-1.html' title='September, 1'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-451414608618610998</id><published>2009-09-01T16:28:00.001+04:00</published><updated>2009-09-01T16:28:29.888+04:00</updated><title type='text'>I’m alive but quite busy…</title><content type='html'>&lt;p&gt;Well, it not good enough not to updating own blog periodically. Will start it shortly. Sorry for delay.&lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/451414608618610998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/451414608618610998' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/451414608618610998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/451414608618610998'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/09/im-alive-but-quite-busy.html' title='I’m alive but quite busy…'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-2586293272243117908</id><published>2009-05-03T14:57:00.002+04:00</published><updated>2009-05-03T15:01:05.275+04:00</updated><title type='text'>boost 1.39.0 is out...</title><content type='html'>Actually, not big news, since it was planned as per schedule :-)&lt;br /&gt;--&lt;br /&gt;SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/2586293272243117908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/2586293272243117908' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/2586293272243117908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/2586293272243117908'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/05/boost-1390-is-out.html' title='boost 1.39.0 is out...'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-8641866614303035163</id><published>2009-02-22T23:50:00.002+03:00</published><updated>2009-02-22T23:58:48.978+03:00</updated><title type='text'>The Safe C Library</title><content type='html'>&lt;a href=&quot;http://www.ddj.com/cpp/214502214?cid=RSSfeed_DDJ_Cpp&quot;&gt;DDJ announced&lt;/a&gt; safe C library (as per &lt;a href=&quot;http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38841&quot;&gt;TR 24731&lt;/a&gt;)  implementation availability on &lt;a href=&quot;https://sourceforge.net/projects/safeclib/&quot;&gt;SourceForge&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;--&lt;br /&gt;SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/8641866614303035163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/8641866614303035163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/8641866614303035163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/8641866614303035163'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/02/safe-c-library.html' title='The Safe C Library'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-7506647349111530081</id><published>2009-02-16T10:42:00.002+03:00</published><updated>2009-02-16T10:50:58.134+03:00</updated><title type='text'>mike tyson&#39;s fights on espn classic channel</title><content type='html'>Well it is a pleasure to see Mike&#39;s best fights on TV.&lt;br /&gt;&lt;br /&gt;Honestly, I wasn&#39;t see them all when I was younger.&lt;br /&gt;From the beginning to the knockout.  &lt;br /&gt;&lt;br /&gt;Thanks to ESPN for that retrospective.&lt;br /&gt;&lt;br /&gt;--&lt;br /&gt;SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/7506647349111530081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/7506647349111530081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7506647349111530081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7506647349111530081'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/02/mike-tysons-fights-on-espn-classic.html' title='mike tyson&#39;s fights on espn classic channel'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-958382954228413879</id><published>2009-02-16T10:34:00.002+03:00</published><updated>2009-02-16T10:39:27.809+03:00</updated><title type='text'>weekend and rain</title><content type='html'>There are raining here in California...&lt;br /&gt;&lt;br /&gt;Bad time for trips and good time for books and coding.&lt;br /&gt; &lt;br /&gt;--&lt;br /&gt;SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/958382954228413879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/958382954228413879' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/958382954228413879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/958382954228413879'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/02/weekend-and-rain.html' title='weekend and rain'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-7380711065417844150</id><published>2009-01-31T14:06:00.002+03:00</published><updated>2009-01-31T14:13:52.266+03:00</updated><title type='text'>Business trip to California</title><content type='html'>Well, I now in San Jose, California, USA for couple of month.&lt;br /&gt;&lt;br /&gt;Trying to figure out how we could improve software product for our new customer.&lt;br /&gt;&lt;br /&gt;I wish to note that it is my first visit to legendary Silicon Vally.&lt;br /&gt;&lt;br /&gt;- SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/7380711065417844150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/7380711065417844150' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7380711065417844150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7380711065417844150'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2009/01/business-trip-to-california.html' title='Business trip to California'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-1393245337807764644</id><published>2008-05-29T08:58:00.004+04:00</published><updated>2008-05-29T10:00:00.891+04:00</updated><title type='text'>STLSoft // some thoughts regarding performance_counter</title><content type='html'>Well, I&#39;m started to look at some useful functionality in &lt;a href=&quot;http://www.stlsoft.org/&quot;&gt;STLSoft&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I&#39;m not saying that I&#39;m unhappy with the &lt;a href=&quot;http://www.boost.org/&quot;&gt;Boost C++ library&lt;/a&gt;, but since STLSoft pass to me with &lt;a href=&quot;http://sf.net/projects/pantheios/&quot;&gt;Pantheios&lt;/a&gt; (Boost still not having logging library) I&#39;d give it a chance :-). You&#39;re know - options are good.&lt;br /&gt;&lt;br /&gt;First, I come to &lt;a href=&quot;http://synesis.com.au/software/stlsoft/doc-1.9/namespaceplatformstl.html&quot;&gt;platformstl&lt;/a&gt;.&lt;br /&gt;There were something that I&#39;m interested, particularly &lt;a href=&quot;http://synesis.com.au/software/stlsoft/doc-1.9/classplatformstl_1_1performance__counter.html&quot;&gt;performance_counter&lt;/a&gt;  and I&#39;m was a little frustrated...&lt;br /&gt;&lt;br /&gt;I&#39;ve not found the options to get floating point interval representation/conversion.&lt;br /&gt;Yeah, I know, I know... I can write it by myself by converting each time by multiply ms (.get_microseconds()) representation to 1E-6 for example. But I think this option should be embedded in STLSoft natively to make it usable.&lt;br /&gt;&lt;br /&gt;A good example of performance counter present in &lt;a href=&quot;http://www.threadingbuildingblocks.org/&quot;&gt;Intel TBB&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;How they differs?&lt;br /&gt;&lt;br /&gt;Well create an example how to check performance with both libs...&lt;br /&gt;&lt;br /&gt;--- code example --------&lt;br /&gt;&lt;iframe src=&quot;http://sergey.nikulov.googlepages.com/perf.html&quot; class=&quot;source_code&quot; style=&quot;width: 100%; height: 20em;&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;-------------------------&lt;br /&gt;&lt;br /&gt;--- output -------------&lt;br /&gt;0.000303 seconds our logger &lt;br /&gt;0.000220881 seconds our logger &lt;br /&gt;-------------------------------&lt;br /&gt;First was STLSoft performance_counter.&lt;br /&gt;Second was Intel TBB tick_count.&lt;br /&gt;&lt;br /&gt;Intel TBB more accurate.&lt;br /&gt;&lt;br /&gt;I think something similar should be added to STLSoft (or already added?)&lt;br /&gt;&lt;br /&gt;Waiting for comments from &lt;a href=&quot;http://stlsoft-musings.blogspot.com/&quot;&gt;Matt&lt;/a&gt; :-)&lt;br /&gt;--&lt;br /&gt; SN</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/1393245337807764644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/1393245337807764644' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/1393245337807764644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/1393245337807764644'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2008/05/stlsoft-some-thoughts-regarding.html' title='STLSoft // some thoughts regarding performance_counter'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6512283192973413213.post-7164762914383936571</id><published>2008-05-13T19:22:00.000+04:00</published><updated>2008-05-13T19:29:08.653+04:00</updated><title type='text'>English part of my thoughts will be here...</title><content type='html'>Just to be sure if I&#39;m on right track with my English practice :-)&lt;br /&gt;Don&#39;t be afraid to blame me for mistakes in comments - I&#39;ll be very thankful</content><link rel='replies' type='application/atom+xml' href='http://snikulov.blogspot.com/feeds/7164762914383936571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6512283192973413213/7164762914383936571' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7164762914383936571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6512283192973413213/posts/default/7164762914383936571'/><link rel='alternate' type='text/html' href='http://snikulov.blogspot.com/2008/05/english-part-of-my-thoughts-will-be.html' title='English part of my thoughts will be here...'/><author><name>Сергей</name><uri>http://www.blogger.com/profile/10973621537470546724</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>