0.14: nl modules are not linked with libntrack even if they use symbols from it

Bug #750554 reported by Arkadiusz Miśkiewicz
110
This bug affects 28 people
Affects Status Importance Assigned to Milestone
ntrack
High
Alexander Sack
ntrack (Ubuntu)
High
Felix Geyer

Bug Description

[arekm@t400 ~]$ kded4
kded4: symbol lookup error: /usr/lib64/ntrack/modules/ntrack-libnl3.so: undefined symbol: ntrack_list_insert_sorted
kded(5564): Communication problem with "kded" , it probably crashed.
Error message was: "org.freedesktop.DBus.Error.ServiceUnknown" : " "The name org.kde.kded was not provided by any .service files" "

zsh: exit 255 kded4

and it is not linked with libntrack while it tries to use libntrack symbol - this is a bug.

[arekm@t400 ~]$ objdump -p /usr/lib64/ntrack/modules/ntrack-libnl3.so|grep NEEDED
  NEEDED libnl.so.3
  NEEDED libnl-route.so.3
  NEEDED libc.so.6

0.13 version linked these correctly.

Revision history for this message
Arkadiusz Miśkiewicz (arekm) wrote :
Revision history for this message
Alexander Sack (asac) wrote :

odd ... i really tested this . thanks.

i guess we want to refactor that into something like ntrack_libnl_libs or ..._common_libs

Revision history for this message
Alexander Sack (asac) wrote :

do you know why this is not reproducible with make; make install; make check (and then running ./common/test/mtest-monitor ?

Revision history for this message
Alexander Sack (asac) wrote :

strange thing is that libntrack.so is actually loading the module, so i would think all symbols would be available there ... or what am i missing?

Revision history for this message
Alexander Sack (asac) wrote :

tentatively milestoning to 015. i guess i need to get this kdeworkspace thing installed to see such things during release QA.

Changed in ntrack:
milestone: none → 015
Revision history for this message
Alex Merry (randomguy3) wrote :

This is the same as bug #785153. The issue is that kded loads modules without RTLD_GLOBAL, so symbols in libraries brought in by one module are not available for other modules.

Revision history for this message
Alex Crazy (k0l0b0k) wrote :

Any workarrounds on it? I've upgraded oneiric yesterday, and got new ntrack. After reboot kded4 eats one CPU core, killing it makes system unusable.
If run kded4 by hand:

Failed to read classid file: Object not found
kded4: symbol lookup error: /usr/lib/ntrack/modules/ntrack-libnl3.so: undefined symbol: ntrack_list_insert_sorted
kded(2910): Communication problem with "kded" , it probably crashed.
Error message was: "org.freedesktop.DBus.Error.NoReply" : " "Message did not receive a reply (timeout by message bus)" "

I can provide any additional info, if needed

Revision history for this message
Lukáš Karas (lukas-karas) wrote :

for everyone who is waiting for update:

wget http://launchpad.net/ntrack/main/014/+download/ntrack-014.tar.gz
wget https://bugs.launchpad.net/ntrack/+bug/750554/+attachment/1978733/+files/ntrack-link.patch
zcat ntrack-014.tar.gz | tar -xf -
cat ntrack-link.patch | patch -p 0

sudo apt-get install libnl3-dev

cd ntrack-014/
 ./configure --prefix=/usr --with-qt4 --with-gobject --with-pygobject --with-glib2 --with-gnu-ld
make -j 6
 sudo make install

kded4 &

Revision history for this message
Alex Crazy (k0l0b0k) wrote :

Lukas, thanks for answer, but it does not work for me. Source patched, configured and compiled well, configure reports about using LIBNL3, installation fine.
But, running kded4 or kdeinit4 --no-fork gives the same:

Failed to read classid file: Object not found
kded4: symbol lookup error: /usr/lib/ntrack/modules/ntrack-libnl3.so: undefined symbol: ntrack_list_insert_sorted
kded(2910): Communication problem with "kded" , it probably crashed.
Error message was: "org.freedesktop.DBus.Error.NoReply" : " "Message did not receive a reply (timeout by message bus)" "

I've looked into /usr/lib/ntrack/modules/ntrack-libnl3.so by objdump, and found that ntrack_list_insert_sorted is really undefined. I run ldd on this module, on other installation (11.04), and ldd reported about link to libntrack.so.0, which is absent in ntrack-0.15 and 0.14 from your links above. I've changed configure, added "-lntrack" to link options, compile and install - and my issue was gone. I have no patch for this, because I'm not sure, that my correction is right.

Is there need for opening addition bug for this?

Revision history for this message
Alex Crazy (k0l0b0k) wrote :

*additional bug

(also, sorry for my English)

Revision history for this message
Alex Merry (randomguy3) wrote :

Well, what you did should be equivalent to what Lukas suggested. I'm not entirely sure why they would give different results.

Unless you don't have automake installed, and so it's not regenerating Makefile.in from Makefile.am, I suppose. Can you try Lukas' patch again, but run `automake` before configure?

Mark Schmidt (schmidtm)
Changed in ntrack:
status: New → Confirmed
Felix Geyer (debfx)
Changed in ntrack (Ubuntu):
assignee: nobody → Felix Geyer (debfx)
importance: Undecided → High
milestone: none → ubuntu-11.10-beta-1
status: New → Confirmed
Revision history for this message
Felix Geyer (debfx) wrote :

Patch agains ntrack-014+bzr312 that makes ntrack-libnl link against libntrack.
This fixes the issue with kded4.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ntrack - 014+bzr312-0ubuntu2

---------------
ntrack (014+bzr312-0ubuntu2) oneiric; urgency=low

  * Add link_ntrack-libnl_to_libntrack.patch: Link ntrack-libnl to libntrack
    as it uses symbols from that library. This caused kded4 to be unable to
    load the module and enter an infinite loop. (LP: #750554)
 -- Felix Geyer <email address hidden> Fri, 19 Aug 2011 11:20:48 +0200

Changed in ntrack (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Søren Holm (sgh) wrote :

Works :D

Revision history for this message
fejes (anthony-fejes) wrote :

Confirm that this works for me too. Thanks.

Revision history for this message
Alex Merry (randomguy3) wrote :

Alexander: any news on whether this is going to go into a release at any point? Without it, KDE's ntrack support is useless (and, indeed, detrimental due to bug 785119).

Revision history for this message
Alexander Sack (asac) wrote :

------------------------------------------------------------
revno: 321
committer: Alexander Sack <email address hidden>
branch nick: ntrack
timestamp: Sat 2011-10-15 21:00:11 +0200
message:
  modules: link all modules against libntrack.la; thx to Felix Geyer (debfx) and Arkadiusz Miśkiewicz (arekm) - lp:750554
------------------------------------------------------------

Changed in ntrack:
assignee: nobody → Alexander Sack (asac)
importance: Undecided → High
status: Confirmed → Fix Committed
Revision history for this message
Alex Merry (randomguy3) wrote :

Many thanks :-)

Revision history for this message
Alexander Sack (asac) wrote :

ntrack 015 is available including the fix for this bug: https://launchpad.net/ntrack/main/015

Changed in ntrack:
milestone: 015 → none
status: Fix Committed → Fix Released
milestone: none → 015
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers