Under Ubuntu 12.04, I installed Okular from a ppa.

After I installed it, I ran into the following problem of opening a PDF file:

$ okular my.pdf
Got bus address:  "unix:abstract=/tmp/dbus-5dWEZJSTX0,guid=4834397efeb7eb0cb8c1da4300000038"
Connected to accessibility bus at:  "unix:abstract=/tmp/dbus-5dWEZJSTX0,guid=4834397efeb7eb0cb8c1da4300000038"
Registered DEC:  true
okular(15329)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(15329)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(15329)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(15329)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
okular(15329)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
Registered event listener change listener:  true
okular: symbol lookup error: okular: undefined symbol: _ZN11KActivities16ResourceInstanceC1EmP7QObject

Here is more information about the installed Okular:

$ okular --version
Qt: 4.8.1
KDE Development Platform: 4.8.5 (4.8.5)
Okular: 0.17.2

$ ldd $(which okular)
    linux-gate.so.1 =>  (0xb7773000)
    libkparts.so.4 => /usr/lib/libkparts.so.4 (0xb7707000)
    libkactivities.so.6 => /usr/lib/libkactivities.so.6 (0xb76f1000)
    libkio.so.5 => /usr/lib/libkio.so.5 (0xb7443000)
    libkdeui.so.5 => /usr/lib/libkdeui.so.5 (0xb7000000)
    libQtGui.so.4 => /usr/lib/i386-linux-gnu/libQtGui.so.4 (0xb652d000)
    libkdecore.so.5 => /usr/lib/libkdecore.so.5 (0xb625c000)
    libQtCore.so.4 => /usr/lib/i386-linux-gnu/libQtCore.so.4 (0xb5f7f000)
    libQtDBus.so.4 => /usr/lib/i386-linux-gnu/libQtDBus.so.4 (0xb5efe000)
    libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb5e19000)
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb5c6f000)
    libnepomuk.so.4 => /usr/lib/libnepomuk.so.4 (0xb5b8b000)
    libnepomukutils.so.4 => /usr/lib/libnepomukutils.so.4 (0xb5b53000)
    libQtXml.so.4 => /usr/lib/i386-linux-gnu/libQtXml.so.4 (0xb5b10000)
    libQtNetwork.so.4 => /usr/lib/i386-linux-gnu/libQtNetwork.so.4 (0xb59c3000)
    libQtSvg.so.4 => /usr/lib/i386-linux-gnu/libQtSvg.so.4 (0xb596e000)
    libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb583a000)
    libstreamanalyzer.so.0 => /usr/lib/libstreamanalyzer.so.0 (0xb57bc000)
    libsolid.so.4 => /usr/lib/libsolid.so.4 (0xb56d9000)
    libacl.so.1 => /lib/i386-linux-gnu/libacl.so.1 (0xb56d0000)
    libattr.so.1 => /lib/i386-linux-gnu/libattr.so.1 (0xb56ca000)
    libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xb56c0000)
    libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb5694000)
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb5675000)
    libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xb566c000)
    libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xb5652000)
    libattica.so.0.3 => /usr/lib/libattica.so.0.3 (0xb5567000)
    libdbusmenu-qt.so.2 => /usr/lib/i386-linux-gnu/libdbusmenu-qt.so.2 (0xb5533000)
    libfontconfig.so.1 => /usr/lib/i386-linux-gnu/libfontconfig.so.1 (0xb54fe000)
    libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb54e3000)
    libaudio.so.2 => /usr/lib/i386-linux-gnu/libaudio.so.2 (0xb54ca000)
    libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xb53d1000)
    libpng12.so.0 => /lib/i386-linux-gnu/libpng12.so.0 (0xb53a7000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb5390000)
    libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xb52f6000)
    libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 (0xb52a7000)
    libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xb5296000)
    libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xb5284000)
    libbz2.so.1.0 => /lib/i386-linux-gnu/libbz2.so.1.0 (0xb5272000)
    liblzma.so.5 => /usr/lib/i386-linux-gnu/liblzma.so.5 (0xb524b000)
    libdlrestrictions.so.1 => /usr/lib/libdlrestrictions.so.1 (0xb5246000)
    libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb5241000)
    librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb5238000)
    /lib/ld-linux.so.2 (0xb7774000)
    libdbus-1.so.3 => /lib/i386-linux-gnu/libdbus-1.so.3 (0xb51ee000)
    libsoprano.so.4 => /usr/lib/libsoprano.so.4 (0xb50fa000)
    libsopranoclient.so.1 => /usr/lib/libsopranoclient.so.1 (0xb50a9000)
    libnepomukquery.so.4 => /usr/lib/libnepomukquery.so.4 (0xb505d000)
    libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xb503c000)
    libstreams.so.0 => /usr/lib/libstreams.so.0 (0xb5004000)
    libxml2.so.2 => /usr/lib/i386-linux-gnu/libxml2.so.2 (0xb4eb7000)
    libudev.so.0 => /lib/i386-linux-gnu/libudev.so.0 (0xb4ea7000)
    libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xb4ea1000)
    libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xb4e77000)
    libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xb4e1a000)
    libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xb4e16000)
    libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xb4dda000)
    libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xb4dd3000)
    libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xb4dcb000)

The output of less /var/log/apt/history.log is in https://dl.dropboxusercontent.com/u/13029929/history.log, and the relevant part is:

Start-Date: 2014-04-05  09:56:11
Commandline: apt-get install okular
Install: libkactivities6:i386 (4.8.5-0ubuntu0.1, automatic), libpoppler28:i386 (0.20.5-1ubuntu3~precise1~ppa1, automatic), libkactivities-bin:i386 (4.8.5-0ubuntu0.1, automatic), libpoppler-qt4-4:i386 (0.20.5-1ubuntu3~precise1~ppa1, automatic), libokularcore3:i386 (4.11.2-0ubuntu1~ubuntu12.04~ppa2, automatic)
Upgrade: okular:i386 (4.8.5-0ubuntu0.1, 4.11.2-0ubuntu1~ubuntu12.04~ppa2)
End-Date: 2014-04-05  09:56:42

What is the problem and how I can solve it?

  • Definitely looks like okular or one of its dependencies needs a slightly different version of some library other than what you have on your system. Trouble is that there are loads of them. Have you also installed all the poppler dependencies from the ppa (they may not all have been pulled by default). – Graeme Apr 5 '14 at 14:44
  • You can check by looking at less /var/log/apt/history.log (or add the relevant part if you are not sure). If not a simple apt-get upgrade may fix the issue. – Graeme Apr 5 '14 at 14:47
  • @Graeme: sudo apt-get install poppler says E: Unable to locate package poppler. But the ppa launchpad.net/~kalakris/+archive/… has both okular and poppler, and I have added the ppa by sudo add-apt-repository ppa:kalakris/okular. – Tim Apr 5 '14 at 14:55
  • Put further information in the question, not in comments. Also, you might have more success reporting this to the person who made the PPA. – Faheem Mitha Apr 5 '14 at 15:12
  • Suggestion: try rebuilding the packages on your system. There may be some minor difference in the package the PPA is using, and what you have on your system. Rebuilding usually increases the chances on the package working on your system. – Faheem Mitha Apr 5 '14 at 15:19

The poster successfully rebuilt the Okular PPA sources on his system. Some versions of the build dependencies were not quite correct for his system, so he had to adjust them. It is unclear why this was necessary, since the posters system is Precise and so is the PPA.

@Graeme and I walked him through the process in the unix.sx chat room. The transcript of the chat session starts at http://chat.stackexchange.com/transcript/message/14710296#14710296

@Graeme suggests that people facing a similar problem look at Kubuntu Backports in the first instance. These are more "official" PPAs.

| improve this answer | |
  • For kubuntu backports, is it the same for Ubuntu ppa? I.e. download source code from there, and unpack and install with the same commands? Are applications from Ubuntu ppa more adapted to Ubuntu than applications from Kubuntu backports? – Tim Apr 5 '14 at 22:13
  • @Tim My general recommendation for anything that is not specifically built on your exact same platform - same Os, same version, it to rebuild it if possible. I have no specific information about using Kubuntu PPAs on Ubuntu. – Faheem Mitha Apr 5 '14 at 22:22
  • hi, Faheem. I recently ran into problem with the installed Okular unix.stackexchange.com/questions/125860/… – Tim Apr 21 '14 at 17:51

Definitely looks like you have everything from the ppa that you need (sometimes you may not if the dependencies aren't versioned correctly). Grepping my own system, it seems the missing symbol is in libkactivities6. There is no versioned dependency here so I can't tell which one it is built against.

I would check to see what other versions of the package are available, it could simply be that there is a newer one and all you need to do is install it. Either that or it is built against an older one, which you could just downgrade to, but be aware that updates in Ubuntu are usually security or bug fixes. To check:

sudo apt-get update  # make sure everything downloads ok and repeat if not
apt-cache show libkactivities6

To install a particular version, just add =version to the package name in apt-get. Eg, to install the version you already have:

sudo apt-get install libkactivities6=4:4.8.5-0ubuntu0.1

Failing this, as per @Faheem Mitha's comment, your only option to install the package is to rebuild it.


Looking at your apt-cache output, you do have 2 versions of libkactivities6. Checking on packages.ubuntu.com I see the older of the two is the current 12.10 version. The other one must have came from somewhere else (another ppa perhaps/).

If you do (note I originally missed the 4: above):

sudo apt-get install libkactivities6=4:4.8.2-0ubuntu2

it should fix this issue, but it may cause a problem with whatever other program the newer version was installed for. It may also be that apt will refuse to do the downgrade because of this.

Rebuilding the ppa package which is otherwise configured to play nicley with Ubuntu, as opposed to building the vanilla okular source from upstream is probably the best solution for you.

| improve this answer | |
  • Thanks. I have apt-get updated. but E: Version '4.8.5-0ubuntu0.1' for 'libkactivities6' was not found. The version of my current libkactivities6 is 4:4.8.5-0ubuntu0.1 – Tim Apr 5 '14 at 15:43
  • Well that's odd, this is the version you already have. You may need to do libkactivities6:1386=4.8.5-0ubuntu0.1, installing this won't do anything. You need to see which other versions are available. If you are unsure, please post the output of apt-cache show libkactivities – Graeme Apr 5 '14 at 15:51
  • Actually, the first thing I would do is rebuild the package(s). It wouldn't be a last resort. :-) It's free software, people. You have the source. – Faheem Mitha Apr 5 '14 at 15:52
  • The output of sudo apt-cache show libkactivities is here dl.dropboxusercontent.com/u/13029929/tmp – Tim Apr 5 '14 at 15:55
  • 1
    @Tim No, no. Rebuild the PPA sources. Basically, install the build dependencies and then debuild -uc -us. The result, if the build is successful, will be some debs. See unix.stackexchange.com/q/112157/4671 – Faheem Mitha Apr 5 '14 at 16:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.