[Please do not mail me a copy of your followup] Hello fellow boosters, I am one of the maintainers of the C++ language track on exercism.io. When I first implemented this language track, we didn't have good regex support in g++'s standard library yet, so we needed boost.regex to fill that gap. Since we were already going to use boost.regex, I used boost.test for the unit test support. At the time, I found a PPA that was providing prebuilt binaries for ubuntu. Since that time, the need for boost.regex has gone away because the standard library implementation has been completed for g++. Along the way, the biggest source of problems in getting people going with C++ has been boost. For Windows users, it's annoying that CMake won't "just find" boost when you install it because there's no uniform mechanism between boost, packaging and CMake to say where boost got installed. For Mac users, they end up having difficulty with homebrew and fighting with Xcode. For Linux users, the PPA has gone stale and they end up being forced to build from scratch and get sent off into a ditch. In the meantime, we've got conan at stable 1.0 version right now, but that introduces a python dependency and then a conan dependency and for beginners I don't know if that's a path less fraught with peril. We've done some work on a branch to ditch boost.test and therefore boost entirely and switch the unit test framework to Catch. We have yet to "drop the hammer" on that and bring it onto master because reasons. (I am not the developer of that branch, but I suspect it hasn't happened yet because of the other integration issues that are needed; namely a bunch of documentation has to be updated and there will be teething pains with anyone who has already downloaded existing exercises and written them against boost.test.) Now, I find it hard to believe that I am the only one that has suffered from these issues all this time. Sure, if you only use header-only libraries then you don't need to build anything, but there are more than a few libraries in boost that either require or benefit significantly from being compiled. In all this time, have we not managed to come up with a stable, reliable PPA archive with ongoing support for boost for linux users? All I seem able to find are half-heartedly maintained PPAs with stale versions of boost on them. I have even tried to navigate going about setting up my own PPA in order to solve the problem myself, but I found launchpad.net and the whole PPA process so poorly documented and explained that I couldn't make head-nor-tails of it and gave up. (And this is coming from someone who has done more than my fair share of packaging and installer work on multiple platforms.) -- "The Direct3D Graphics Pipeline" free book http://tinyurl.com/d3d-pipeline The Terminals Wiki http://terminals-wiki.org The Computer Graphics Museum http://computergraphicsmuseum.org Legalize Adulthood! (my blog) http://legalizeadulthood.wordpress.com
Hi Richard, I totally understand your concerns. Being a developer working on Windows but targeting Linux, I feel the pain on both ends. Most likely the unique nature of Boost.Test and Boost.Build and the lack of expertise in these tools outside the Boost community led to the shift in using CMake. If anyone has up-to-date info on this initiative, it would be awesome to let us know. I cannot say anything about the PPA part, but as a Windows dev, I picked up Vcpkg some time ago, and because C++ devs cannot alude CMake for too long, it is not an extra dependency like the Python of Conan. I am currently authoring an OpenCL SDK package, as well as trying to bring in clFFT, clBLAS, clRNG and clSPARSE for the greater good. The entry cost is fairly high, but when things work (600+ packages in Vcpkg right now), it works flawlessly. Even though I could consume Boost fairly easily now, the Linux clusters I target (using Ubuntu) all have outdated Boost versions (clusters run LTS versions) and Boost.Build is not an easy foe. A PPA would be useful indeed. Even then, if I wanted to use non-system GCC-Clang versions, I would need to recompile again. This is the scenario Vcpkg handles really neatly: new compiler, just say vcpkg.exe upgrade, and it rebuilds everything with proper dependecy tracking using the new compiler. Anyhow, hopefully a PPA guru can step up and make life easier for us all. Cheers, Máté Feladó: Richard via Boost-users Elküldve: 2018. február 28., szerda 23:33 Címzett: boost-users@lists.boost.org Másolatot kap: Richard Tárgy: [Boost-users] PPA for boost [Please do not mail me a copy of your followup] Hello fellow boosters, I am one of the maintainers of the C++ language track on exercism.io. When I first implemented this language track, we didn't have good regex support in g++'s standard library yet, so we needed boost.regex to fill that gap. Since we were already going to use boost.regex, I used boost.test for the unit test support. At the time, I found a PPA that was providing prebuilt binaries for ubuntu. Since that time, the need for boost.regex has gone away because the standard library implementation has been completed for g++. Along the way, the biggest source of problems in getting people going with C++ has been boost. For Windows users, it's annoying that CMake won't "just find" boost when you install it because there's no uniform mechanism between boost, packaging and CMake to say where boost got installed. For Mac users, they end up having difficulty with homebrew and fighting with Xcode. For Linux users, the PPA has gone stale and they end up being forced to build from scratch and get sent off into a ditch. In the meantime, we've got conan at stable 1.0 version right now, but that introduces a python dependency and then a conan dependency and for beginners I don't know if that's a path less fraught with peril. We've done some work on a branch to ditch boost.test and therefore boost entirely and switch the unit test framework to Catch. We have yet to "drop the hammer" on that and bring it onto master because reasons. (I am not the developer of that branch, but I suspect it hasn't happened yet because of the other integration issues that are needed; namely a bunch of documentation has to be updated and there will be teething pains with anyone who has already downloaded existing exercises and written them against boost.test.) Now, I find it hard to believe that I am the only one that has suffered from these issues all this time. Sure, if you only use header-only libraries then you don't need to build anything, but there are more than a few libraries in boost that either require or benefit significantly from being compiled. In all this time, have we not managed to come up with a stable, reliable PPA archive with ongoing support for boost for linux users? All I seem able to find are half-heartedly maintained PPAs with stale versions of boost on them. I have even tried to navigate going about setting up my own PPA in order to solve the problem myself, but I found launchpad.net and the whole PPA process so poorly documented and explained that I couldn't make head-nor-tails of it and gave up. (And this is coming from someone who has done more than my fair share of packaging and installer work on multiple platforms.) -- "The Direct3D Graphics Pipeline" free book http://tinyurl.com/d3d-pipeline The Terminals Wiki http://terminals-wiki.org The Computer Graphics Museum http://computergraphicsmuseum.org Legalize Adulthood! (my blog) http://legalizeadulthood.wordpress.com _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org https://lists.boost.org/mailman/listinfo.cgi/boost-users
participants (2)
-
legalize+jeeves@mail.xmission.com
-
Máté Ferenc Nagy-Egri