Opening feisty and Merges
Fabio Massimo Di Nitto
fabbione at ubuntu.com
Wed Nov 1 07:29:14 GMT 2006
as i am 100% sure you know, we are about to open feisty (toolchain is almost in
place and please don't start asking *when*. It will open when it's ready), a
bunch of packages will fail to build due to some kernel header changes.
I did a quick rebuild of edgy/main on the new toolchain and the most frequent
failure is due a split in linux/if_*.h split up and removal of 4 macros.
If your package show errors like:
iface-linux.c:105: warning: implicit declaration of function 'IFLA_RTA'
iface-linux.c:198: error: 'IFA_ADDRESS' undeclared (first use in this function)
first of all you want to #include <linux/if_addr.h> for the definitions
and add in your code something similar to:
#define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct
You can get all the 4 definitions from
Just to make this clear, it is NOT a kernel bug and they need to be fixed in
userland. Those macro were dead code in the kernel and userland needs to cope
The reason why i am #ifndef'ing the define is that will allow you to test build
with older headers while waiting for the new one without breaking compatibility.
It is really up to you to decide if you want to use that approach or not.
I'm going to make him an offer he can't refuse.
More information about the ubuntu-devel