cli
cli copied to clipboard
Dbjdbj no boost
with very simple measures applied here you have "no-Boost" version.
Telnet project is removed from the Samples.sln
This is C++17
Thank you very much, @DBJDBJ As I explained on reddit, unfortunately I need to keep the library C++14, because many projects already using "cli" are stuck with old C++14 compilers. So, despite your effort (that I appreciate very much), I can't merge your work for now.
Ok and thanks but :)
The stuff that is in the cli/dbj folder (dbjdbj+no_boost branch) ... I think that has to work in even C++11 ... let me check .. if it does that will leave "only" boost asio to deal with
C++14 version ready
Just a consideration. In the embedded linux world (devices running linux embedded) there are plenty of users that can benefit of this library but are stuck to C++ 11 and can't move on with 14/17 or 20. This depends on a lot of factors (that are not always technical). I think it would be nice to keep it C++11 compatible instead of moving to newer C++ version simply for "exercises in style" that brings no real benefit except few easier coding shortcuts.
@thegwydd
Generally, I agree. I have to ask: C++17 version of std lib or just a c++ compiler capable of C++17, or both? I am also (very) interested in the "embeded coding. Alas on Windows only. I (very rarely if ever) use std lib. I also like to use ISO C99/11/17/18 whenever I can.
But for C++ not all is lost :) Have you seen Martin Moene's nonstd
stuff here?
The are some libraries that provide a backport of C++ 14/17/20 STL (only for what is possible) to C++11 or even C++03. Generally speaking the problem I've found in last years is that someone creates a linux image for a device and releases a toolchain for that device. I'm not speaking about open source projects but commercial products. I often find myself stuck to a fixed compiler version and/or stdlib version. Developing software using C++11, at the moment, is the safest way to avoid late backporting of your software. For example, in 2019 I started a project where I have to work with GCC 4.9.2 and it supports only C++11. It's not a rare case, before this I was working on another board with a an embedded non-unix realtime OS and the compiler (a paid compiler) was said to support C++11 but was lacking of several STL functionalitier. For example it was lacking the declaration of "nullptr". It sounds weird but this was one of the most used compilers used for small embedded environments (Keil).
That said, I'm trying to modify cli in order to work with both boost and non boost versions of asio and, optionally, use conan.io to get boost. I will add a conan.io recipe for "cli" too because I think it could be a nice benefit to have it in the conan central index.
The are some libraries that provide a backport of C++ 14/17/20 STL (only for what is possible) to C++11 or even C++03. Generally speaking the problem I've found in last years is that someone creates a linux image for a device and releases a toolchain for that device. I'm not speaking about open source projects but commercial products. I often find myself stuck to a fixed compiler version and/or stdlib version. Developing software using C++11, at the moment, is the safest way to avoid late backporting of your software. For example, in 2019 I started a project where I have to work with GCC 4.9.2 and it supports only C++11. It's not a rare case, before this I was working on another board with a an embedded non-unix realtime OS and the compiler (a paid compiler) was said to support C++11 but was lacking of several STL functionalitier. For example it was lacking the declaration of "nullptr". It sounds weird but this was one of the most used compilers used for small embedded environments (Keil).
That said, I'm trying to modify cli in order to work with both boost and non boost versions of asio and, optionally, use conan.io to get boost. I will add a conan.io recipe for "cli" too because I think it could be a nice benefit to have it in the conan central index.
Erm ok well I think you/we are in the wrong repository ... Please visit me on my github or blog dbj.org ...