Bug 324819 - plasma-mobile-0.5 does not build against latest networkmanagement
Summary: plasma-mobile-0.5 does not build against latest networkmanagement
Status: RESOLVED FIXED
Alias: None
Product: Active
Classification: Unmaintained
Component: General (show other bugs)
Version: PA 4
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: unscheduled
Assignee: active
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-09-12 04:55 UTC by Chris Reffett
Modified: 2013-10-03 22:22 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Patch for SolidNetworkNotifier (1.72 KB, patch)
2013-09-12 04:58 UTC, Chris Reffett
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Reffett 2013-09-12 04:55:55 UTC
Networkmanagement has moved its headers from /usr/include/solid/control/* to /usr/include/solid/controlnm09/*, moved the library to /usr/$(libdir)/kde4/solid_networkmanager09.so, and renamed some internal stuff (mostly adding Nm09 to the end of all of the classes). plasma-mobile doesn't build against this, and will die after not finding the headers and being unable to find definitions for several networkmanager methods.

Reproducible: Always
Comment 1 Chris Reffett 2013-09-12 04:58:22 UTC
Created attachment 82293 [details]
Patch for SolidNetworkNotifier

Wrote this patch while packaging plasma-mobile for Gentoo, it renames everything to use the new method/class names, but I'm currently getting linker errors that look like it can't find the new .so file. Still looking into that.
Comment 2 tisseron.joffrey 2013-09-17 19:40:30 UTC
With your patch, I have this error :

CMakeFiles/contour.dir/location/network-engines/solid/SolidNetworkNotifier.cpp.o: dans la fonction « SolidNetworkNotifier::init() »:
SolidNetworkNotifier.cpp:(.text+0xe4): référence indéfinie vers « Solid::Control::NetworkManagerNm09::networkInterfaces() »
SolidNetworkNotifier.cpp:(.text+0x199): référence indéfinie vers « Solid::Control::NetworkInterfaceNm09::interfaceName() const »
collect2: erreur: ld a retourné 1 code d'état d'exécution
Comment 3 Chris Reffett 2013-09-17 19:41:56 UTC
Indeed, I get the same errors, but I haven't figured them out yet. I posted the incomplete patch here in the hopes that someone might see something that I missed.
Comment 4 tisseron.joffrey 2013-09-17 19:46:19 UTC
I found here (http://lists.kde.org/?l=kde-hardware-devel&m=129816280002299) that Solid::Control is deprecated since kde 4.7...
Comment 5 Christoph Feck 2013-10-02 20:54:39 UTC
Chris, can you try latest git master versions? I think this issue was fixed.
Comment 6 Chris Reffett 2013-10-03 03:57:49 UTC
Just pulled latest git master of plasma-mobile, issue is still there.
Comment 7 Lamarque V. Souza 2013-10-03 09:48:23 UTC
plasma-mobile is not supposed to use Solid::Control* anymore. It was ported to use NetworkManagerQt instead in commit 84afc2eb137690f4e856c99cefa6e27c027006a1. There should be no calls to Solid::Control in plasma-mobile since then. It looks like your local plasma-mobile repo is outdated or you are not using plasma-mobile's master branch.
Comment 8 Chris Reffett 2013-10-03 20:11:02 UTC
I am currently on commit b9a2e0f8964e29b86337c48438aa4a64b5cf9ad0 (Oct 3), and contourd/location/network-engines/solid/SolidNetworkNotifier.cpp very clearly contains:
#include <solid/control/networkmanager.h>
#include <solid/control/wirelessnetworkinterface.h>
#include <solid/control/wirelessaccesspoint.h>

#include <NetworkManagerQt/manager.h>
#include <NetworkManagerQt/wirelessdevice.h>

I don't know what's going on with the inherits here, but there is very clearly an inherit of Solid::Control. Note that Solid::Control isn't actually referenced anywhere in the files.
Comment 9 Chris Reffett 2013-10-03 20:45:32 UTC
I can confirm that removing those inherits makes git master build correctly. However, the fact remains that plasma-mobile-0.5 is unbuildable at this time.
Comment 10 Aaron J. Seigo 2013-10-03 22:22:49 UTC
Git commit 5746b2abdc3f20cc13664ab0a20e469f1da8e0fd by Aaron Seigo.
Committed on 03/10/2013 at 22:22.
Pushed by aseigo into branch 'master'.

remove unused headers

fixes build when using newer networkmanager / kde-workspace as a base

M  +0    -5    contourd/location/network-engines/solid/SolidNetworkNotifier.cpp

http://commits.kde.org/plasma-mobile/5746b2abdc3f20cc13664ab0a20e469f1da8e0fd