Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 834547 - media-gfx/superslicer: depends on ilmbase (won't install due to ilmbase/imath block)
Summary: media-gfx/superslicer: depends on ilmbase (won't install due to ilmbase/imath...
Status: RESOLVED OBSOLETE
Alias: None
Product: GURU
Classification: Unclassified
Component: Package issues (show other bugs)
Hardware: AMD64 Linux
: Normal normal
Assignee: GURU project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-04 03:19 UTC by gjy0724
Modified: 2022-08-29 23:11 UTC (History)
5 users (show)

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


Attachments
fixed ebuild (superslicer-2.3.57.12-r1.ebuild,3.38 KB, text/plain)
2022-07-03 16:14 UTC, Stephen Cavilia
Details
fix required for boost 1.79 (boost-filesystem-1.79.patch,3.29 KB, patch)
2022-07-03 16:14 UTC, Stephen Cavilia
Details | Diff
fix for handling tbb version > 2020 (tbb-version-2.3.57.12.patch,1.03 KB, patch)
2022-07-03 16:14 UTC, Stephen Cavilia
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description gjy0724 2022-03-04 03:19:34 UTC
Superslicer (media-gfx/superslicer-2.3.57.11:23/23::guru) will not attempt to build due to blockage of dependency packages.  The media-libs/ilmbase-2.5.7-r3 blocks install of media-libs/openexr-3.1.4-r1 due to conflict with dev-libs/imath-3.1.4-r3.  The media-libs/ilmbase-2.5.7-r3 and media-libs/openexr-3.1.4-r1 are direct dependencies of media-gfx/superslicer-2.3.57.11 and possibly older versions.

Reproducible: Always

Steps to Reproduce:
1. Enable guru repository
2. Set necessary accept_keywords
3. Set necessary use flags
4. Attempt to emerge superslicer
Actual Results:  
I received the same results on two systems, one a recent install and one was installed in late 2019.

# emerge -av superslicer

Calculating dependencies... done!
[ebuild  N     ] dev-cpp/tbb-2020.3::gentoo  USE="-debug -examples" ABI_X86="(64) -32 (-x32)" 2,578 KiB
[ebuild  N     ] dev-libs/jemalloc-5.2.1-r1:0/2::gentoo  USE="-debug -lazy-lock -prof -static-libs -stats -xmalloc" ABI_X86="(64) -32 (-x32)" 542 KiB
[ebuild  N     ] dev-cpp/eigen-3.4.0-r1:3::gentoo  USE="openmp (-cuda) -debug -doc -test" 2,642 KiB
[ebuild  N     ] dev-libs/c-blosc-1.21.1:0/1::gentoo  USE="lz4 snappy zlib -test -zstd" 1,423 KiB
[ebuild  N     ] dev-libs/imath-3.1.4-r3:3/29::gentoo  USE="-doc -large-stack -python -test" PYTHON_SINGLE_TARGET="python3_9 -python3_8 -python3_10" 559 KiB
[ebuild  N    ~] dev-libs/cereal-1.3.2::gentoo  USE="-doc -test" 377 KiB
[ebuild  N    ~] dev-libs/miniz-2.1.0-r2::gentoo  103 KiB
[ebuild  N     ] media-libs/ilmbase-2.5.7-r3:0/25::gentoo  USE="-large-stack -static-libs -test" ABI_X86="(64) -32 (-x32)" 26,895 KiB
[ebuild  N     ] media-libs/qhull-2020.2-r3:0/8::gentoo  USE="static-libs -doc" 0 KiB
[ebuild  N     ] sci-libs/nlopt-2.6.2-r1::gentoo  USE="-cxx -guile -octave -python -static-libs -test" PYTHON_TARGETS="python3_9 -python3_8 -python3_10" 0 KiB
[ebuild  N     ] dev-libs/log4cplus-2.0.7:0/3::gentoo  USE="iconv qt5 -explicit-initialization -server -test -threads" 1,183 KiB
[ebuild  N     ] media-libs/glfw-3.3.5::gentoo  USE="-wayland-only" ABI_X86="(64) -32 (-x32)" 759 KiB
[ebuild  N     ] media-libs/openexr-3.1.4-r1:0/30::gentoo  USE="-doc -examples -large-stack -test -threads -utils" CPU_FLAGS_X86="avx" 19,848 KiB
[ebuild  N    ~] sci-libs/libigl-2.3.0::gentoo  USE="-static-libs" 1,106 KiB
[ebuild  N     ] media-gfx/openvdb-8.2.0-r7:0/8::gentoo  USE="abi8-compat blosc zlib -abi6-compat -abi7-compat -doc -numpy -python -static-libs -test" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_8 -python3_10" 2,595 KiB
[ebuild  N     ] media-libs/glew-2.2.0:0/2.2::gentoo  USE="-doc -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB
[ebuild  N     ] sci-mathematics/cgal-5.2-r2:0/14::gentoo  USE="gmp qt5 -doc -examples -mpfi -ntl" 0 KiB
[ebuild     U ~] x11-libs/wxGTK-3.0.5.1:3.0-gtk3::gentoo [3.0.4-r302:3.0-gtk3::gentoo] USE="X gstreamer libnotify opengl sdl tiff -debug -doc -webkit (-aqua%)" ABI_X86="(64) -32 (-x32)" 19,282 KiB
[ebuild  N    ~] media-gfx/superslicer-2.3.57.11:23::guru  USE="gui -profiles -test" 31,709 KiB
[blocks B      ] media-libs/ilmbase ("media-libs/ilmbase" is soft blocking media-libs/openexr-3.1.4-r1, dev-libs/imath-3.1.4-r3)

Total: 19 packages (1 upgrade, 18 new), Size of downloads: 111,593 KiB
Conflict: 1 block (1 unsatisfied)

  (media-libs/ilmbase-2.5.7-r3:0/25::gentoo, ebuild scheduled for merge) pulled in by
    media-libs/ilmbase:= required by (media-gfx/superslicer-2.3.57.11:23/23::guru, ebuild scheduled for merge) USE="gui -profiles -test" ABI_X86="(64)"

  (media-libs/openexr-3.1.4-r1:0/30::gentoo, ebuild scheduled for merge) pulled in by
    >=media-libs/openexr-3:= required by (media-gfx/openvdb-8.2.0-r7:0/8::gentoo, ebuild scheduled for merge) USE="abi8-compat blosc zlib -abi6-compat -abi7-compat -doc -numpy -python -static-libs -test" ABI_X86="(64)" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_10 -python3_8"
    media-libs/openexr:0= required by (media-gfx/superslicer-2.3.57.11:23/23::guru, ebuild scheduled for merge) USE="gui -profiles -test" ABI_X86="(64)"

  (dev-libs/imath-3.1.4-r3:3/29::gentoo, ebuild scheduled for merge) pulled in by
    >=dev-libs/imath-3.1.4-r2:= required by (media-gfx/openvdb-8.2.0-r7:0/8::gentoo, ebuild scheduled for merge) USE="abi8-compat blosc zlib -abi6-compat -abi7-compat -doc -numpy -python -static-libs -test" ABI_X86="(64)" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_10 -python3_8"
    >=dev-libs/imath-3.1.4-r1:= required by (media-libs/openexr-3.1.4-r1:0/30::gentoo, ebuild scheduled for merge) USE="-doc -examples -large-stack -test -threads -utils" ABI_X86="(64)" CPU_FLAGS_X86="avx"


Expected Results:  
Superslicer and dependent packages are built and added to system.
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-03-04 03:24:41 UTC
media-gfx/superslicer needs to be adapted to work with OpenEXR 3.

It should drop the ilmbase dependency if possible (if it works with OpenEXR 3) and change to imath or >=openexr-3:0= if appropriate.

See https://github.com/gentoo/guru/blob/master/media-gfx/superslicer/superslicer-2.3.57.9-r1.ebuild.
Comment 2 gjy0724 2022-03-04 22:54:46 UTC
All builds from the guru repo are failing for me with the same results.  Is it possible I have a USE flag causing this on the older builds?  From the comment above I assumed that 2.3.57.9-r1 would work, but it did not.

# emerge -uNDav media-gfx/superslicer

 * IMPORTANT: 16 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.


These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] dev-cpp/tbb-2020.3::gentoo  USE="-debug -examples" ABI_X86="(64) -32 (-x32)" 2,578 KiB
[ebuild  N     ] virtual/fortran-0::gentoo  USE="openmp" 0 KiB
[ebuild  N     ] app-eselect/eselect-wxwidgets-20180529::gentoo  12 KiB
[ebuild  N     ] app-eselect/eselect-notify-send-0.1::gentoo  0 KiB
[ebuild  N     ] app-text/docbook-xsl-ns-stylesheets-1.79.1::gentoo  USE="-ruby" 21,448 KiB
[ebuild  N     ] x11-libs/libXinerama-1.1.4-r1::gentoo  USE="-doc" ABI_X86="(64) -32 (-x32)" 281 KiB
[ebuild  N     ] dev-libs/jemalloc-5.2.1-r1:0/2::gentoo  USE="-debug -lazy-lock -prof -static-libs -stats -xmalloc" ABI_X86="(64) -32 (-x32)" 542 KiB
[ebuild  N     ] virtual/notification-daemon-0::gentoo  USE="-gnome -kde" 0 KiB
[ebuild     U  ] app-editors/vim-core-8.2.4328-r1::gentoo [8.2.4328::gentoo] USE="acl nls -minimal" 0 KiB
[ebuild     U  ] app-editors/vim-8.2.4328-r1::gentoo [8.2.4328::gentoo] USE="X acl crypt gpm nls -cscope -debug -lua -minimal -perl -python -racket -ruby (-selinux) -sound -tcl -terminal -vim-pager" LUA_SINGLE_TARGET="lua5-1 -luajit" PYTHON_SINGLE_TARGET="python3_9 -python3_8 -python3_10" 0 KiB
[blocks b      ] <app-editors/vim-8.2.4328-r1 ("<app-editors/vim-8.2.4328-r1" is soft blocking app-editors/vim-core-8.2.4328-r1)
[ebuild  N    ~] dev-libs/cereal-1.3.2::gentoo  USE="-doc -test" 377 KiB
[ebuild  N    ~] dev-libs/miniz-2.1.0-r2::gentoo  103 KiB
[ebuild  N     ] media-libs/qhull-2020.2-r3:0/8::gentoo  USE="static-libs -doc" 1,277 KiB
[ebuild  N    ~] sci-libs/libigl-2.3.0::gentoo  USE="-static-libs" 1,106 KiB
[ebuild  N     ] sci-libs/nlopt-2.6.2-r1::gentoo  USE="-cxx -guile -octave -python -static-libs -test" PYTHON_TARGETS="python3_9 -python3_8 -python3_10" 1,993 KiB
[ebuild  N     ] x11-libs/libnotify-0.7.9-r1::gentoo  USE="introspection -gtk-doc -test" ABI_X86="(64) -32 (-x32)" 96 KiB
[ebuild  N     ] dev-libs/imath-3.1.4-r3:3/29::gentoo  USE="-doc -large-stack -python -test" PYTHON_SINGLE_TARGET="python3_9 -python3_8 -python3_10" 559 KiB
[ebuild  N     ] dev-libs/log4cplus-2.0.7:0/3::gentoo  USE="iconv qt5 -explicit-initialization -server -test -threads" 1,183 KiB
[ebuild  N     ] media-libs/glfw-3.3.5::gentoo  USE="-wayland-only" ABI_X86="(64) -32 (-x32)" 759 KiB
[ebuild  N     ] media-libs/ilmbase-2.5.7-r3:0/25::gentoo  USE="-large-stack -static-libs -test" ABI_X86="(64) -32 (-x32)" 26,895 KiB
[ebuild  N     ] app-arch/lz4-1.9.3-r1:0/r132::gentoo  USE="-static-libs" ABI_X86="(64) -32 (-x32)" 314 KiB
[ebuild  N     ] dev-libs/c-blosc-1.21.1:0/1::gentoo  USE="lz4 snappy zlib -test -zstd" 1,423 KiB
[ebuild  N     ] media-libs/openexr-3.1.4-r1:0/30::gentoo  USE="-doc -examples -large-stack -test -threads -utils" CPU_FLAGS_X86="avx" 19,848 KiB
[ebuild  N    ~] x11-libs/wxGTK-3.0.5.1:3.0-gtk3::gentoo  USE="X libnotify opengl sdl tiff -debug -doc -gstreamer -webkit" ABI_X86="(64) -32 (-x32)" 19,282 KiB
[ebuild  N     ] media-gfx/openvdb-7.1.0-r5:0/7::gentoo  USE="abi7-compat -abi6-compat -doc -numpy -python -static-libs -test -utils" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_8" 1,911 KiB
[ebuild  N    ~] media-gfx/superslicer-2.2.53.4-r1:22::guru  USE="gui -test" 33,000 KiB
[blocks B      ] media-libs/ilmbase ("media-libs/ilmbase" is soft blocking dev-libs/imath-3.1.4-r3, media-libs/openexr-3.1.4-r1)

Total: 26 packages (2 upgrades, 24 new), Size of downloads: 134,976 KiB
Conflict: 2 blocks (1 unsatisfied)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (media-libs/ilmbase-2.5.7-r3:0/25::gentoo, ebuild scheduled for merge) pulled in by
    media-libs/ilmbase:= required by (media-gfx/openvdb-7.1.0-r5:0/7::gentoo, ebuild scheduled for merge) USE="abi7-compat -abi6-compat -doc -numpy -python -static-libs -test -utils" ABI_X86="(64)" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_8"

  (media-libs/openexr-3.1.4-r1:0/30::gentoo, ebuild scheduled for merge) pulled in by
    media-libs/openexr:0= required by (media-gfx/openvdb-7.1.0-r5:0/7::gentoo, ebuild scheduled for merge) USE="abi7-compat -abi6-compat -doc -numpy -python -static-libs -test -utils" ABI_X86="(64)" CPU_FLAGS_X86="avx sse4_2" PYTHON_SINGLE_TARGET="python3_9 -python3_8"
    media-libs/openexr:0= required by (media-gfx/superslicer-2.2.53.4-r1:22/22::guru, ebuild scheduled for merge) USE="gui -test" ABI_X86="(64)"
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-03-04 23:42:51 UTC
(In reply to gjy0724 from comment #2)
> All builds from the guru repo are failing for me with the same results.  Is
> it possible I have a USE flag causing this on the older builds?  From the
> comment above I assumed that 2.3.57.9-r1 would work, but it did not.
> 

No, I'm just pointing out that the ebuild has the wrong/outdated dependency.
Comment 4 Bernd 2022-03-05 00:04:20 UTC
According to the build system (version 2.3.57.11), the package itself does not depend on OpenEXR. It checks whether OpenVDB is built with support for OpenEXR, in which case it links against the OpenEXR / ILMBase libraries.

The minimal required OpenVDB version is 5.0. It's possible, that this old version didn't solve the link dependencies correctly. However, later versions (8.0 and later, maybe 7.0 as well) should do proper linking, so their build system would not need to explicitly link against OpenEXR and ILMBase libraries.

Also, the support for OpenVDB is optional.

So, the ebuild could add an openvdb USE flag and depend on >=openvdb-8. OpenVDB pulls in the proper OpenEXR libraries if set and the package doesn't need to depend on either ilmbase or openexr at all. The build system eventually needs some patching to avoid explicit linking against ilmbase and openexr libraries (in CMakeLists.txt and cmake/modules/FindOpenVDB.cmake). OpenVDB *should* properly link against the correct OpenEXR libraries.

If this doesn't work out, the package needs to restrict their openexr dependency to <openexr-3. Most packages nowadays already support openexr-3, so this can lead to package collisions, if another installed packages requires >=openexr-3.
Comment 5 Stephen Cavilia 2022-07-03 16:14:05 UTC
Created attachment 789974 [details]
fixed ebuild
Comment 6 Stephen Cavilia 2022-07-03 16:14:29 UTC
Created attachment 789977 [details, diff]
fix required for boost 1.79
Comment 7 Stephen Cavilia 2022-07-03 16:14:59 UTC
Created attachment 789980 [details, diff]
fix for handling tbb version > 2020
Comment 8 Stephen Cavilia 2022-07-03 16:17:38 UTC
I was able to fix the openvdb cmake error, a bug with tbb 2021 (adapted from a patch found somewhere on github), and a build failure with boost 1.79 (deprecated filesystem::fstream).

Haven't tested much yet but it compiles and runs.
Comment 9 Stephen Cavilia 2022-07-03 16:53:16 UTC
I believe this also needs a dev-cpp/tbb:= built slot dep
Comment 10 gjy0724 2022-08-29 23:11:10 UTC
I confirm that SS 2.5.59.0-r1 builds and appears to run fine.  Thank you all.