[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-discuss] Error in compiling migration-checkpoint.o

From: Murad Kablan
Subject: Re: [Qemu-discuss] Error in compiling migration-checkpoint.o
Date: Wed, 7 Jan 2015 20:57:15 -0700

Thanks, Dave. 
The problem is solved. It seemed that the function declarations were changed in the current libnl version (I installed) from the versions mentioned in the tutorial page.

After searching in https://github.com/tgraf/libnl.git for rtnl_tc_get_ops function, it was found in lib/route/tc.c file. So by placing this line
 extern struct rtnl_tc_ops *      rtnl_tc_get_ops(struct rtnl_tc *);

in libnl packege I installed (specifically in this file   /usr/include/libnl3/netlink/route/tc.h ), it worked and I no longer got the error any more.


On Sun, Jan 4, 2015 at 2:35 PM, Dave Gosselin <address@hidden> wrote:
Assuming that these provide the appropriate headers, verify that the compiler’s include and library paths are set accordingly:

$ VERBOSE=1 make 2>&1 | tee build-errors.txt

The QEMU source file where the compiler fails should have a #include <netlink… directive for picking-up the rtnl_tc_get_ops prototype.  The compiler should be passed a -I parameter corresponding to the directory containing the header for that prototype.  Running the build as given above will show all flags passed to the compiler.  build-errors.txt will have all the output from the build for convenient grepping.


On Jan 4, 2015, at 3:12 PM, Murad Kablan <address@hidden> wrote:

Hi Dave, 
These are all the libnl dev packages I installed and I still have the same error.
   87  sudo apt-get install libnl-3-200
   88  sudo apt-get install libnl-3-dev 
  138  sudo apt-get install libnl-utils 
  139  sudo apt-get install libnl-nf-3-dev 
  140  sudo apt-get install libnl-genl-3-dev 
  141  sudo apt-get install libnl-cli-3-dev 
  144  sudo apt-get install libnl-3-200
  145  sudo apt-get install libnl-3-dev 
  146  sudo apt-get install libnl-cli-3-dev 
  147  sudo apt-get install libnl-cli-3-200 
  148  sudo apt-get install libnl-genl-3-dev 
  149  sudo apt-get install libnl-genl-3-200 
  150  sudo apt-get install libnl-nf-3-200 
  151  sudo apt-get install libnl-nf-3-dev 
  152  sudo apt-get install libnl-route-3-200 
  153  sudo apt-get install libnl-route-3-dev 
  154  sudo apt-get install libnl-doc 
  212  sudo apt-get install libnl-cli-3-dev
  213  sudo apt-get install libnl-route-3-dev

Am I missing something else?


On Sun, Jan 4, 2015 at 7:05 AM, Dave Gosselin <address@hidden> wrote:
A quick search of ‘rtnl_tc_get_ops’ on the Google machine revealed that it’s part of libnl (netlink protocol ibrary suite).  Please check and ensure that you have libnl devel package installed on your system.


On Jan 3, 2015, at 11:52 PM, Murad Kablan <address@hidden> wrote:

I am new to QEMU and want to use its fault tolerance feature by "Michael Hines" described in this page

I followed these steps 
$ git checkout 'mc'
$ ./configure --enable-mc

and installed the required libraries, but when I run the 'make' command I get the following error:

  CC    migration-checkpoint.o
migration-checkpoint.c: In function ‘mc_enable_buffering’:
migration-checkpoint.c:482:5: error: implicit declaration of function ‘rtnl_tc_get_ops’ [-Werror=implicit-function-declaration]
     if (!(ops = rtnl_tc_get_ops(tc))) {
migration-checkpoint.c:482:5: error: nested extern declaration of ‘rtnl_tc_get_ops’ [-Werror=nested-externs]
migration-checkpoint.c:482:15: error: assignment makes pointer from integer without a cast [-Werror]
     if (!(ops = rtnl_tc_get_ops(tc))) {
cc1: all warnings being treated as errors
make: *** [migration-checkpoint.o] Error 1

Is this due to compiler version? Please advise.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]