On Tue, 2015-05-19 at 11:35 +0100, John Whitmore wrote:
The short back story is that I'm trying to get a USB 4G Modem working on a RaspberryPi 2B device. Via much help and direction from the linux networking mailing list and the modem manager mailing list I find myself here. The latest version of raspbian for the RPi 2 had such an old version of ModemManager packaged up it's not supported so I started on a bit of a Linux From Scratch trip to install later versions of both the ModemManager and NetworkManager. ModemManager built but NetworkManager is giving me a compile time error which I think is strange. dhcp-network.c:79:17: error 'BPF_XOR' undeclared I'm happy enough that it's an error but I'm confused that it didn't first complain that it failed to find a header file? I'm running the latest kernel (3.18.13) which I cross compiled on another computer so all the linux headers on the RPi 2 are from the older kernel. So I have to get my linux into a place where NetworkManager build can pick them up, but like I say above I'm unsure why the header file wasn't first falgged as an error. Searching through the linux source tree I find that definition in: include/uapi/linux/bpf_common.h Because of the lack of header warning I'm wondering if that is the header at all and wheather there's some other issue with my build? Perhaps I should not be using the later kernel at all?
Hi John, See https://bugzilla.gnome.org/show_bug.cgi?id=749510#c2 NM uses code from systemd to do the internal DHCP. Seems that depends on kernel features that are newer. A quick hack is http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=2697aaf3c11de1243ba85d43a62706597d849ba6 but then probably "dhcp=internal" won't work. Just use "dhclient". (or does it? I didn't try...) Better longterm solution would be to either be able to disable building of systemd code at compile time, or fixing the code to support older kernels. Thomas
Attachment:
signature.asc
Description: This is a digitally signed message part