Bug #26
closedCan't build spawn-binding on openSUSE 15.3
0%
Description
When trying to build spawn-binding on openSUSE 15.3 (up to date), cmake fails because it can't find package uuid, as shown hereafter:
sipload@localhost:~/my_rp_builder_dir/gitsources/spawn-binding> rm -rf build/
sipload@localhost:~/my_rp_builder_dir/gitsources/spawn-binding> mkdir build
sipload@localhost:~/my_rp_builder_dir/gitsources/spawn-binding> cd build
sipload@localhost:~/my_rp_builder_dir/gitsources/spawn-binding/build> cmake ..
CMake Warning (dev) in CMakeLists.txt:
No project() command is present. The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command. Add a line of
code such as
project(ProjectName)
near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers. Use -Wno-dev to suppress it.
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
Distribution detected (separated by ';' choose one of them) suse;opensuse
Include: /home/sipload/my_rp_builder_dir/gitsources/spawn-binding/conf.d/cmake/00-opensuse-config.cmake
-- Custom options: 00-opensuse-config.cmake --
Include: /usr/share/cmake/Modules/CMakeAfbTemplates/cmake/cmake.d/01-build_options.cmake
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Checking for module 'uuid'
-- No package 'uuid' found
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:467 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindPkgConfig.cmake:647 (_pkg_check_modules_internal)
/usr/share/cmake/Modules/CMakeAfbTemplates/cmake/cmake.d/01-build_options.cmake:137 (PKG_CHECK_MODULES)
/usr/share/cmake/Modules/CMakeAfbTemplates/cmake/common.cmake:101 (include)
/usr/share/cmake/Modules/CMakeAfbTemplates.cmake:19 (include)
conf.d/cmake/config.cmake:187 (include)
CMakeLists.txt:2 (include)
-- Configuring incomplete, errors occurred!
See also "/home/sipload/my_rp_builder_dir/gitsources/spawn-binding/build/CMakeFiles/CMakeOutput.log".
Updated by Vincent Rubiolo over 3 years ago
- Subject changed from Can't build spawn-binding on openSUSE to Can't build spawn-binding on openSUSE 15.3
Updated by Vincent Rubiolo over 3 years ago
Emmanuel,
The build is failing at the pkgconfig stage because you are missing the package providing the uuid feature. In the case of opensuse, this is uuid-devel.
In general, you will need to install packages associated with every pkgconfig require mentioned in the binding cmake source file. In the case of spawn-binding, those are https://github.com/redpesk-common/spawn-binding/blob/master/conf.d/cmake/config.cmake#L73 (they are always located in this file for every binding using the cmake templates).
In your case, I had to install the following to be able to build the binding:
zypper install uuid-devel libjson-c-devel libcap-ng-devel libseccomp-devel uthash-devel systemd-devel
The latter (systemd-devel) is not present in the pkgconfig dependencies, I think this is an error on our end.
Note that a useful feature is to specify 'pkgconfig(XXX)' as the name of the package to install (e.g. zypper install 'pkgconfig(uuid)') and the package manager is able to automatically find the associated exact package name (libuuid-devel in this case).
Let me know how it goes, I was able to build the binding on Opensuse 15.3 in my case.
Updated by Vincent Rubiolo over 3 years ago
- Status changed from New to Submitter feedback needed
Updated by Emmanuel Jubera [SAFT] over 3 years ago
Problem fixed with installation of libuuid-devel package.
Updated by Vincent Rubiolo over 3 years ago
- Status changed from Submitter feedback needed to Resolved
Updated by Vincent Rubiolo over 3 years ago
- Assignee changed from Vincent Rubiolo to Emmanuel Jubera [SAFT]
Updated by Vincent Rubiolo over 3 years ago
- Status changed from Resolved to Closed
Updated by Vincent Rubiolo over 3 years ago
FYI, the missing libsystemd issue has been fixed in mainline via https://github.com/redpesk-common/spawn-binding/commit/29e75385fcc9ef1af57fd6a874e04d47810e0c0a
Updated by Sebastien Douheret [IoT.bzh] about 3 years ago
- OS Affects Version/s arz-1.0.0 added
Updated by Sebastien Douheret [IoT.bzh] almost 3 years ago
- OS Affects Version/s arz-1.0 added
- OS Affects Version/s deleted (
arz-1.0.0)