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


Reply via email to