OMG! Who killed Kile?

After the most recent update (applied 12 September 26) I can’t get Kile to run.

hattons@USS-Liberty:~/Documents/TeX/schreiber/discombobulate> kile
KCrash: Application 'kile' crashing... crashRecursionCounter = 2
Segmentation fault         (core dumped) kile
hattons@USS-Liberty:~/Documents/TeX/schreiber/discombobulate> 

Is anyone else having this problem?

1 Like

Which version do you have installed? 2.95 is working fine for me in Leap 16.0.

Version 2.9.95. I’m confident that some change in the latest slowroll is the culprit.

Then, report the issue, and for now do a rollback

I did report it. A rollback would require thinking, and I don’t need it immediately. If I had confirmation that it is working for someone else running the latest slowroll, I might be inclined to dig deeper.

I was able to patch okular which was killing kile. There’s a missing line in the source code. I asked Grok to give a summary. It may need some tweeks:

Problem: Kile 2.9.95 on openSUSE Slowroll dies at startup. Crash is in Okular 26.08.0, not Kile. Embed mode ViewerWidget never creates m_pasteAnnotation, then updateViewActions() calls setEnabled on garbage.

Fix: rebuild the Slowroll okular RPM with one nullptr. Flatpak Okular will not help.

  1. Enable the source repo (disabled by default):

zypper lr -d | grep -iE ‘src|source’
sudo zypper mr -e repo-oss-source # use the alias you actually have
sudo zypper ref

  1. Fetch source + build deps (si -d is wrong here; that flag means build-deps only):

sudo zypper in patterns-devel-base-devel_rpm_build rpm-build rpmdevtools
sudo zypper si okular

  1. User build tree:

rpmdev-setuptree
cp /usr/src/packages/SPECS/okular.spec ~/rpmbuild/SPECS/
cp /usr/src/packages/SOURCES/* ~/rpmbuild/SOURCES/

  1. Patch file ~/rpmbuild/SOURCES/okular-init-pasteAnnotation.patch diff:

— a/part/part.cpp
+++ b/part/part.cpp
@@ -760,6 +760,7 @@ void Part::setupViewerActions()
m_exportAsMenu = nullptr;
m_exportAsText = nullptr;
m_exportAsDocArchive = nullptr;

  • m_pasteAnnotation = nullptr;
  1. In okular.spec: set Release: to 1.3 (or anything > stock 1.1) and add
    Patch1: okular-init-pasteAnnotation.patch
    %autosetup -p1 already applies it. Do not edit BUILD/ by hand; %prep wipes it.

  2. Confirm the patch applies, then build:

rpmbuild -bp ~/rpmbuild/SPECS/okular.spec
grep -n ‘m_pasteAnnotation = nullptr’ ~/rpmbuild/BUILD/okular-26.08.0/part/part.cpp
rpmbuild -bb ~/rpmbuild/SPECS/okular.spec

  1. Install the matching set (spectre is pinned to the exact NEVR). Unsigned local RPM: ignore GPG:

sudo zypper in --no-gpg-checks
~/rpmbuild/RPMS/x86_64/okular-26.08.0-1.3..rpm
~/rpmbuild/RPMS/x86_64/okular-spectre-26.08.0-1.3.
.rpm
~/rpmbuild/RPMS/noarch/okular-lang-26.08.0-1.3.*.rpm

  1. rpm -q okular should show 26.08.0-1.3. Start Kile.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.