Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 938346 - app-emulation/libvirt-10.3.0-r2[nbd] Run-time dependency libnbd found: NO (tried pkgconfig and cmake)
Summary: app-emulation/libvirt-10.3.0-r2[nbd] Run-time dependency libnbd found: NO (tr...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Virtualization Team
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2024-08-23 14:34 UTC by Arniii
Modified: 2024-08-25 18:59 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
how_it_was_called.txt emerge_--info.txt /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/{build-info/,files/,temp/,work/**{.log,.txt}} /var/lib/portage/ /etc/portage/ /var/log/portage/elog/app-emulation/libvirt-10.3.0-r2:20240823-135359.log equery_f_sys-b (app-emulation_libvirt_[nbd]_config_fail.tar.lz,261.00 KB, application/x-lzip)
2024-08-23 14:34 UTC, Arniii
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Arniii 2024-08-23 14:34:35 UTC
Created attachment 901015 [details]
how_it_was_called.txt emerge_--info.txt /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/{build-info/,files/,temp/,work/**{.log,.txt}} /var/lib/portage/ /etc/portage/ /var/log/portage/elog/app-emulation/libvirt-10.3.0-r2:20240823-135359.log equery_f_sys-b

from build.log:
```
Found CMake: /usr/bin/cmake (3.28.5)
Run-time dependency libnbd found: NO (tried pkgconfig and cmake)

meson.build:1016:4: ERROR: Problem encountered: nbdkit support requires libnbd

A full log can be found at /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-logs/meson-log.txt

```

from the meson-log.txt:
```
Called: `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libnbd` -> 1
stderr:
Package libnbd was not found in the pkg-config search path.
Perhaps you should add the directory containing `libnbd.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libnbd' not found
-----------
CMake binary for host machine is not cached
CMake binary missing from cross or native file, or env var undefined.
Trying a default CMake fallback at cmake
Found CMake: /usr/bin/cmake (3.28.5)
Extracting basic cmake information
CMake Toolchain: Calling CMake once to generate the compiler state
Calling CMake (['/usr/bin/cmake']) in /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/__CMake_compiler_info__ with:
  - "--trace-expand"
  - "--trace-format=json-v1"
  - "--no-warn-unused-cli"
  - "--trace-redirect=cmake_trace.txt"
  - "-G"
  - "Ninja"
  - "-DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake"
  - "."
CMake trace warning: add_executable() non imported executables are not supported
CMake TRACE: /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/__CMake_compiler_info__/CMakeFiles/CMakeScratch/TryCompile-W0beLh/CMakeLists.txt:21 add_executable(['cmTC_d15c3'])
CMake trace warning: target_link_options() TARGET cmTC_d15c3 not found
CMake TRACE: /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/__CMake_compiler_info__/CMakeFiles/CMakeScratch/TryCompile-W0beLh/CMakeLists.txt:27 target_link_libraries(['cmTC_d15c3', ''])
Try CMake generator: auto
Calling CMake (['/usr/bin/cmake']) in /var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/cmake_libnbd with:
  - "--trace-expand"
  - "--trace-format=json-v1"
  - "--no-warn-unused-cli"
  - "--trace-redirect=cmake_trace.txt"
  - "-DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/app-emulation/libvirt-10.3.0-r2/work/libvirt-10.3.0-build/meson-private/cmake_libnbd/CMakeMesonToolchainFile.cmake"
  - "."
  -- Module search paths:    ['/', '/opt', '/usr', '/usr/local']
  -- CMake root:             /usr/share/cmake
  -- CMake architectures:    []
  -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share', '']
Preliminary CMake check failed. Aborting.
Run-time dependency libnbd found: NO (tried pkgconfig and cmake)

meson.build:1016:4: ERROR: Problem encountered: nbdkit support requires libnbd

```


from https://www.portagefilelist.de/?fs=libnbd.pc#panchor
```
libnbd.pc 	/usr/lib64/pkgconfig/libnbd.pc 	sys-libs 	sys-libs/libnbd 	1.18.1 	amd64
```

from https://gitweb.gentoo.org/repo/gentoo.git/tree/app-emulation/libvirt/libvirt-10.3.0-r2.ebuild#n93 :
```
nbd? ( sys-block/nbdkit )
```

seems to be missing dependency of sys-libs/libnbd
Comment 1 Arniii 2024-08-23 14:37:20 UTC
  │  ~  equery l libnbd                                                                                                
!!! No installed packages matching 'libnbd'
 * Searching for libnbd ...
Comment 3 Arniii 2024-08-23 14:38:39 UTC
it seems more like USE flag `nbd` doesn't propagate.
Comment 4 Mike Gilbert gentoo-dev 2024-08-23 15:33:24 UTC
Seems that libvirt has a direct dependency on libnbd which is not expressed in the ebuild.
Comment 5 Arniii 2024-08-24 06:41:10 UTC
https://github.com/gentoo/gentoo/pull/38274

Shouldn't it be something like this? :

nbd? (sys-block/nbdkit[nbd] ) 

because sys-block/nbdkit[nbd] has dependency to sys-lib/libnbd

in the pull request I see next:

nbd? (
		sys-block/nbdkit
		sys-libs/libnbd
	)
Comment 6 Larry the Git Cow gentoo-dev 2024-08-25 18:59:27 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1af8db2b307691d0f5f7b617d73bef5fe1f5b80

commit b1af8db2b307691d0f5f7b617d73bef5fe1f5b80
Author:     Michal Privoznik <michal.privoznik@gmail.com>
AuthorDate: 2024-08-23 21:45:04 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-08-25 18:58:26 +0000

    app-emulation/libvirt: Depend on sys-libs/libnbd too
    
    In its upstream commit of v9.8.0-rc1~27 [1] libvirt introduced an
    optional dependency on libnbd. Reflect this in corresponding
    ebuilds. Now, pre-10.0.0 ebuilds do not have nbd USE flag. Thus,
    it needs to be introduced to record the dependency properly.
    NB, initially, the configure option was named 'libnbd' and only
    after v9.9.0-rc1~108 [2] it was changed to 'nbdkit'. Hence the
    discrepancy in libvirt-9.8.0-r3 and libvirt-9.9.0-r3 ebuilds.
    
    1: https://gitlab.com/libvirt/libvirt/-/commit/40935b395c91a95a71cd66b9e2872346ac3a2145
    2: https://gitlab.com/libvirt/libvirt/-/commit/7cbd8c42305735375b60abf8abc47838a7a050d4
    Closes: https://bugs.gentoo.org/938346
    Signed-off-by: Michal Privoznik <michal.privoznik@gmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/38274
    Signed-off-by: Sam James <sam@gentoo.org>

 .../{libvirt-10.0.0-r3.ebuild => libvirt-10.0.0-r4.ebuild}       | 5 ++++-
 .../{libvirt-10.1.0-r2.ebuild => libvirt-10.1.0-r3.ebuild}       | 5 ++++-
 .../{libvirt-10.2.0-r1.ebuild => libvirt-10.2.0-r2.ebuild}       | 5 ++++-
 .../{libvirt-10.3.0-r2.ebuild => libvirt-10.3.0-r3.ebuild}       | 5 ++++-
 .../libvirt/{libvirt-10.5.0.ebuild => libvirt-10.5.0-r1.ebuild}  | 5 ++++-
 .../libvirt/{libvirt-9.8.0-r3.ebuild => libvirt-9.8.0-r4.ebuild} | 9 +++++++--
 .../libvirt/{libvirt-9.9.0-r3.ebuild => libvirt-9.9.0-r4.ebuild} | 9 +++++++--
 app-emulation/libvirt/libvirt-9999.ebuild                        | 5 ++++-
 8 files changed, 38 insertions(+), 10 deletions(-)