Just took the original CMakeLists.txt from https://github.com/autinitysystems/snap7 and modified it a little, allowing the choice for using a dynamic or static library and adding support for Qt. I've checked it on Windows 10 and Ubuntu and works ok. Nowadays all IDEs support CMake by default, You just need to open the CMakeLists.txt file for getting the complete list of files for a project. Piece of cake. / Main project CMakeLists.txt / cmake_minimum_required (VERSION 3.8) project ("CIP" LANGUAGES...
By using CMake you only need to toggle a variable in the script (or using CmakeGUI) to generate a static or dynamic library in a portable way (Win / Mac / Linux / ARM) SET ( LIBRARY_TYPE SHARED ) SET ( LIBRARY_TYPE STATIC )
I thought about two things Provide CMakeLists.txt for snap7 for C/C++ Create something like snap7++, a OOP version of snap7 in C++ with objects like PLC, DB, connection objects, etc.
Hi there I’m just discovered this wonderful library. It would be great if the library could be updated to Modern C++. Snap7.h and Snap7.cpp are just wrappers around the C interface. A more OOP approach would be better. Like objects for DBs, PLCs, etc. Also, there’s no official CMake support (I needed to use a modified version of this (https://github.com/autinitysystems/snap7). Cmake is right now the standard method for building multiplatform applications in C++. In Linux there’s a collision between...