[libvirt] Why using AC_PATH_PROG to detect the location of run-time external programs

Howard Tsai htsai at skytap.com
Wed Mar 19 21:15:15 UTC 2014


Hello,

I am wondering why AC_PATH_PROG is used to detect the location of run-time
external programs (such as dnsmasq, ovs-vsctl, etc.), and hardcoded the
locations in binary. It seems wrong to me.

At compile-time, configure script should only determine whether the
resulting binary should support the use of these external programs. The
actual location of these programs should be determined at run-time, either
from libvirtd.conf or by $PATH.

I haven't looked into how to fix it.

The problem I ran into earlier is this: on my dev box, I have Open vSwitch
utility ovs-vsctl installed locally in /usr/local/bin. Therefore, at
build-time, libvirt detected the location of ovs-vsctl and hardcoded
'/usr/local/bin/ovs-vsctl' in libvirtd. When I package libvirt and install
it on my test box, it couldn't find ovs-vsctl, as ovs-vsctl is installed at
/usr/bin/ovs-vsctl in the test box, so it failed.

Thanks,
Howard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20140319/201caf55/attachment-0001.htm>


More information about the libvir-list mailing list