[Olsr-dev] lq nl80211 branch

Ferry Huberts (spam-protected)
Tue Nov 6 10:44:49 CET 2012


KJ,

please check the libnl website at http://www.infradead.org/~tgr/libnl/.

It shows:

The 3.2.0+ releases contain a change in versioning to allow for multiple 
versions of libnl to be installed simultaneously. The basename of the 
library has been renamed from libnl to libnl-3 and the headers will be 
installed in /usr/include/libnl3/netlink/.

If you are using pkg-config you will not notice any change. If not, you 
may consider switching to using it right now.


Can you update your code to use pkg-config please?

Ubuntu still has an 'old' version of the library while Fedora is up-to-date.



On 06/11/12 10:33, Henning Rogge wrote:
> I merged the master branch into the nl80211 branch so we have the most
> recent code.
>
> Please pull from the "nl80211" branch.
>
> Henning
>
> On Tue, Nov 6, 2012 at 10:31 AM, Ferry Huberts <(spam-protected)> wrote:
>> Ok, installed libnl3-devel and with this patch
>>
>>> diff --git a/Makefile.inc b/Makefile.inc
>>> index 7c51756..f95b9d8 100644
>>> --- a/Makefile.inc
>>> +++ b/Makefile.inc
>>> @@ -180,7 +180,7 @@ endif
>>>   LIBS +=                $(OS_LIB_PTHREAD)
>>>
>>>   ifeq ($(OS),linux)
>>> -LIBS +=                -lnl -lnl-genl -lnl-route
>>> +LIBS +=                -lnl-3 -lnl-genl-3 -lnl-route-3
>>>   endif
>>>
>>>   # extra options from the outside
>>> @@ -223,7 +223,7 @@ CPPFLAGS += -DNODEBUG
>>>   endif
>>>
>>>   ifeq ($(OS),linux)
>>> -CPPFLAGS+=-DLINUX_NL80211 -DHTTPINFO_PUD -I$(TOPDIR)/lib
>>> -I$(TOPDIR)/lib/pud/nmealib/include -I$(TOPDIR)/lib/pud/wireformat/include
>>> +CPPFLAGS+=-DLINUX_NL80211 -I /usr/include/libnl3 -DHTTPINFO_PUD
>>> -I$(TOPDIR)/lib -I$(TOPDIR)/lib/pud/nmealib/include -I$(TOPDIR)/lib/pud/wir
>>>   endif
>>>
>>>   # a make function to quote "/" and "."
>>
>>
>>
>> I am now getting this:
>>
>>> [CC] src/linux/nl80211_link_info.c
>>> In file included from /usr/include/libnl3/netlink/route/link.h:18:0,
>>>                   from /usr/include/libnl3/netlink/route/addr.h:20,
>>>                   from src/linux/nl80211_link_info.c:56:
>>> /usr/include/linux/if.h:142:8: error: redefinition of ‘struct ifmap’
>>> In file included from src/linux/nl80211_link_info.c:47:0:
>>> /usr/include/net/if.h:112:8: note: originally defined here
>>> In file included from /usr/include/libnl3/netlink/route/link.h:18:0,
>>>                   from /usr/include/libnl3/netlink/route/addr.h:20,
>>>                   from src/linux/nl80211_link_info.c:56:
>>> /usr/include/linux/if.h:176:8: error: redefinition of ‘struct ifreq’
>>> In file included from src/linux/nl80211_link_info.c:47:0:
>>> /usr/include/net/if.h:127:8: note: originally defined here
>>> In file included from /usr/include/libnl3/netlink/route/link.h:18:0,
>>>                   from /usr/include/libnl3/netlink/route/addr.h:20,
>>>                   from src/linux/nl80211_link_info.c:56:
>>> /usr/include/linux/if.h:225:8: error: redefinition of ‘struct ifconf’
>>> In file included from src/linux/nl80211_link_info.c:47:0:
>>> /usr/include/net/if.h:177:8: note: originally defined here
>>>
>>> make: *** [src/linux/nl80211_link_info.o] Error 1
>>
>>
>>
>> On 06/11/12 10:23, Henning Rogge wrote:
>>>
>>> Hmm...
>>>
>>> I use libnl3-dev, might this be the difference?
>>>
>>> Henning Rogge
>>>
>>> On Tue, Nov 6, 2012 at 10:18 AM, Ferry Huberts <(spam-protected)> wrote:
>>>>
>>>> And also
>>>>
>>>> libnl.x86_64        1.1-15.fc17
>>>> libnl-devel.x86_64  1.1-15.fc17
>>>> libnl3.x86_64       3.2.13-1.fc17
>>>>
>>>>
>>>>
>>>> On 06/11/12 10:11, Ferry Huberts wrote:
>>>>>
>>>>>
>>>>> No
>>>>> Fedora 17 x86_64
>>>>>
>>>>> libnfnetlink.x86_64        1.0.0-4.fc17
>>>>> libnfnetlink-devel.x86_64  1.0.0-4.fc17
>>>>>
>>>>>
>>>>> On 06/11/12 10:09, Kees-Jan Hermans wrote:
>>>>>>
>>>>>>
>>>>>> This is the big problem with libnetlink on Linux - they've decided to
>>>>>> completely overhaul their development from one day to the other; header
>>>>>> files, data structures, names of their libraries - everything is
>>>>>> different.
>>>>>>
>>>>>> Are you using debian?
>>>>>>
>>>>>> KJ
>>>>>>
>>>>>> On Tue, 2012-11-06 at 09:57 +0100, Ferry Huberts wrote:
>>>>>>>
>>>>>>>
>>>>>>> Don't know how you compile but I get this:
>>>>>>>
>>>>>>>> [CC] src/linux/nl80211_link_info.c
>>>>>>>> src/linux/nl80211_link_info.c: In function ‘connect_netlink’:
>>>>>>>> src/linux/nl80211_link_info.c:178:2: error: implicit declaration of
>>>>>>>> function ‘nl_socket_alloc’ [-Werror=implicit-function-declaration]
>>>>>>>> src/linux/nl80211_link_info.c:178:2: error: nested extern
>>>>>>>> declaration of ‘nl_socket_alloc’ [-Werror=nested-externs]
>>>>>>>> src/linux/nl80211_link_info.c:178:26: error: assignment makes
>>>>>>>> pointer from integer without a cast [-Werror]
>>>>>>>> src/linux/nl80211_link_info.c:182:2: error: passing argument 1 of
>>>>>>>> ‘genl_connect’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:54:0:
>>>>>>>> /usr/include/netlink/genl/genl.h:23:12: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c:186:2: error: passing argument 1 of
>>>>>>>> ‘genl_ctrl_resolve’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:55:0:
>>>>>>>> /usr/include/netlink/genl/ctrl.h:29:12: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c:190:25: error: assignment makes
>>>>>>>> pointer from integer without a cast [-Werror]
>>>>>>>> src/linux/nl80211_link_info.c:194:2: error: passing argument 1 of
>>>>>>>> ‘nl_connect’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:53:0:
>>>>>>>> /usr/include/netlink/netlink.h:40:12: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c: In function
>>>>>>>> ‘nl80211_link_info_for_interface’:
>>>>>>>> src/linux/nl80211_link_info.c:350:2: error: passing argument 1 of
>>>>>>>> ‘nl_send_auto_complete’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:53:0:
>>>>>>>> /usr/include/netlink/netlink.h:48:12: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c:356:3: error: passing argument 1 of
>>>>>>>> ‘nl_recvmsgs’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:53:0:
>>>>>>>> /usr/include/netlink/netlink.h:58:12: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c: In function ‘mac_of_neighbor’:
>>>>>>>> src/linux/nl80211_link_info.c:398:2: error: passing argument 1 of
>>>>>>>> ‘rtnl_neigh_alloc_cache’ from incompatible pointer type [-Werror]
>>>>>>>> In file included from src/linux/nl80211_link_info.c:57:0:
>>>>>>>> /usr/include/netlink/route/neighbour.h:30:26: note: expected ‘struct
>>>>>>>> nl_handle *’ but argument is of type ‘struct nl_sock *’
>>>>>>>> src/linux/nl80211_link_info.c:398:2: error: too many arguments to
>>>>>>>> function ‘rtnl_neigh_alloc_cache’
>>>>>>>> In file included from src/linux/nl80211_link_info.c:57:0:
>>>>>>>> /usr/include/netlink/route/neighbour.h:30:26: note: declared here
>>>>>>>> src/linux/nl80211_link_info.c: In function
>>>>>>>> ‘nl80211_link_info_cleanup’:
>>>>>>>> src/linux/nl80211_link_info.c:437:2: error: implicit declaration of
>>>>>>>> function ‘nl_socket_free’ [-Werror=implicit-function-declaration]
>>>>>>>> src/linux/nl80211_link_info.c:437:2: error: nested extern
>>>>>>>> declaration of ‘nl_socket_free’ [-Werror=nested-externs]
>>>>>>>> cc1: all warnings being treated as errors
>>>>>>>> make: *** [src/linux/nl80211_link_info.o] Error 1
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 06/11/12 09:45, Kees-Jan Hermans wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Ok. Been washed in GIT knowledge for the last few hours. Now it
>>>>>>>> should
>>>>>>>> be done. Branch is there, including README in the source.
>>>>>>>>
>>>>>>>> KJ
>>>>>>>>
>>>>>>>> On Mon, 2012-11-05 at 17:22 +0100, Henning Rogge wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> It happens to EVERYONE...
>>>>>>>>>
>>>>>>>>> Including me, there was just not that many people watching when I
>>>>>>>>> made
>>>>>>>>> my mistakes. ;)
>>>>>>>>>
>>>>>>>>> Henning
>>>>>>>>>
>>>>>>>>> On Mon, Nov 5, 2012 at 5:09 PM, Kees-Jan Hermans
>>>>>>>>> <(spam-protected)> wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Oh, did I just show myself to be a complete git-amateur? Sorry.
>>>>>>>>>> I'll
>>>>>>>>>> have a look.
>>>>>>>>>>
>>>>>>>>>> KJ
>>>>>>>>>>
>>>>>>>>>> On Mon, 2012-11-05 at 16:50 +0100, Henning Rogge wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Nov 5, 2012 at 3:05 PM, Kees-Jan Hermans
>>>>>>>>>>> <(spam-protected)> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> LQ nl80211-library-based plugin code has been made available
>>>>>>>>>>>> under
>>>>>>>>>>>> branch name 'fox_kjhermans', and it contains link quality
>>>>>>>>>>>> recalculation
>>>>>>>>>>>> logic for Linux 80211. It is also dynamically configurable via
>>>>>>>>>>>> the
>>>>>>>>>>>> regular config file. A README of how to configure is, for now,
>>>>>>>>>>>> enclosed
>>>>>>>>>>>> in the src/linux/nl80211_link_info.c file.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I do not see it in the repository... where did you pushed it?
>>>>>>>>>>>
>>>>>>>>>>> Henning Rogge
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Ferry Huberts
>>>>
>>>> --
>>>> Olsr-dev mailing list
>>>> (spam-protected)
>>>> https://lists.olsr.org/mailman/listinfo/olsr-dev
>>>
>>>
>>>
>>>
>>
>> --
>> Ferry Huberts
>
>
>

-- 
Ferry Huberts




More information about the Olsr-dev mailing list