To use our C++ library in a CMake project, you only need to include this file and to reference our library with the yoctolib name. This file contains all the compilation rules for our library. If you want to do this for header-only-lib only, you need to do this in its CMake file. Moreover, CMake is open source and is available on almost all platforms.įor these reasons, since version 0 of our C++ library, we added a CMakeLists.txt file in the Sources subdirectory. Then you can just include 'acme/headeronlylib/api.h' or include Header only lib.As we are going to see below, the CMake syntax is much simpler, making the life of the developer easier as well. cpp file into an executable, but its syntax is very complex and becomes almost incomprehensible for large projects. Indeed, GNU make already enables us to describe the commands to be run to transform a. We could wonder why not using GNU make directly. Usually under Linux, one uses CMake to generate a GNU make file which then uses gcc or g++ to compile the source file and to create the executable.ĬMake generates makefiles which enable you to compile the application with gccĪ CMake project is composed of source files and of one or several CMakeLists.txt files containing the required information to compile the application, such as the location of the source files, the name of the executable, the libraries to be used, and so on. In other words, the role of CMake is not to actually build the executable, but to prepare a list of commands to be performed to generate the executable. CMake is neither a compiler nor an IDE, but it is a "tool for managing the build process of software". This will then propagate asio and chatmessage s include directories to your Server target, which will turn add the correct include flags to the compiler flags. If it is not the case, we recommend that you start by reading our post " How to start in C++ with Yoctopuce modules" which explains how our library works.įirst of all, a few words on CMake. First of all, as Tzyvarev pointed out in the comments, you must split the targetincludedirectories () command into two separate commands. Note: we assume that you already have a minimal knowledge of the C++ language and of our programming libraries. However, we hadn't yet documented how to use CMake to compile the library and use it in a program. This process is documented in the README file and there is a post explaining how to compile the library with the Code::Blocks IDE. Recently, we have had several customers who decided to compile our C++ library under Linux.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |