Hi!
I'm working on updating prusa-slicer, and I got it working, but there is
one thing I don't understand.
At the test-phase of the build, it failed with the following error:
#+BEGIN_EXAMPLE text
7/7 Test #7: slic3rutils_tests ................SIGTRAP***Exception:
3.99 sec
(process:4580): libsoup-ERROR **: 14:32:30.855: libsoup3 symbols
detected. Using libsoup2 and libsoup3 in the same process is not supported.
#+END_EXAMPLE
So the issue was, that prusa-slicer is using libsoup2, whereas libsou3
was pulled in from a dependency, which turned out to be webkit.
In the previous package version the included package was
webkitgtk-for-gtk3[0]. I had to use webkitgtk-with-libsoup2[1] for it to
work.
This latter package directly descends from the former one. It's package
definition just replaced the input =libsoup= with =libsoup-minimal-2=
and as far as I understand adds =-DUSE_SOUP2=ON= to the build flags.
So far this is clear to me.
What isn't however, is the following:
Without that modification =cmake build= works fine and it is only much
later during the testing phase, that things fail.
When switching from =webkitgtk-for-gtk3= to =webkitgtk-with-libsoup2=
tough the =cmake build= stage already fails, and I need to add this to
the package definition:
#+BEGIN_EXAMPLE scheme
(substitute* "src/slic3r/CMakeLists.txt"
(("webkit2gtk-4.1")
"webkit2gtk-4.0"))))))
#+END_EXAMPLE
And I have no clue where this version change originates from. Both
dependencies don't mention any version at all.
prusa-slicer is compiling successfully, but I'm trying to understand why
so that I can put a comment into the package definition properly
explaining why this substitute* is necessary.
Does anyone have a clue?
Regards
nomike
[0]
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/webkit.scm#n301
[1]
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/webkit.scm#n320