[Slackbuilds-users] issues with msgpack-c

Giancarlo Dessì gian at giand.it
Wed Feb 21 16:50:27 UTC 2024


Hi

I use msgpack-c as required dependency for mmtf-cpp, that is a 
dependency for avogadrolibs Some days ago I had to build and install all 
dependencies required for Avogadro 2 for testing it in another machine, 
but the build of msgpack-c failed due an error returned by gtest:

[ 15%] Building CXX object test/CMakeFiles/zone.dir/zone.cpp.o
In file included from /usr/include/gtest/gtest-message.h:57,
                  from /usr/include/gtest/gtest-assertion-result.h:46,
                  from /usr/include/gtest/gtest.h:64,
                  from /tmp/SBo/msgpack-3.3.0/test/zone.cpp:8:
/usr/include/gtest/internal/gtest-port.h:279:2: error: #error C++ 
versions less than C++14 are not supported.
   279 | #error C++ versions less than C++14 are not supported.
       |  ^~~~~

Previous builds have not brought problems, but I think this is caused by 
recent upgrade of gtest package (January 2024). Furthermore, I don't 
know if gtest is a required or optional dependency and if it can be 
disabled, I have to check about this in the source.

Since msgpack-c 3.3 is outdated, I tried also other solutions and I 
adapted the slackbuild for the latest release, msgpack-c-cpp-6.1.0. The 
build works but another problem happens: while msgpack-c 3.3 (and 
previous versions) support both C and C++, earlier releases (>= 4.0.0) 
have separated  the part C from C++ and the source is maintained with 
two distint git branches.

At the moment I have built the package with the C++ part of latest 
sources released, it was easy because is a header-only library and I 
think this should be enough for mmtf-cpp package, but other packages 
released in SBo and requiring msgpack-c could need the C part of source. 
How to solved this?

I think that the packages should be replaced with two separated 
packages, respectively for each implementation (C and C++), but it would 
be reasonable to test and check if all packages based on msgpack-c 
require both or single C/C++ implementations. The slackbuild for msgpack 
needs surely an upgrade if the issue given by gtest cannot be solved 
(the build of some parts of source requires C++11 standard and this 
conflicts with new version of googletest). Otherwise the slackbuilds of 
11 packages remain broken: 
https://slackbuilds.org/advsearch.php?q=msgpack-c&stype=revdep

However, I make myself available to do a possible split of the two 
packages if Ruben does not want to work on it


-- 
*********************************************************
Giancarlo Dessì
https://www.giand.it
https://github.com/giandex

Slackware Linux... because it works!
*********************************************************



More information about the SlackBuilds-users mailing list