Regarding location of Libvirt library
Andrea Bolognani
abologna at redhat.com
Wed Mar 31 17:19:30 UTC 2021
On Wed, 2021-03-31 at 17:01 +0200, Michal Privoznik wrote:
> On 3/31/21 7:38 AM, shafnamol N wrote:
> > Hi,
> > I have installed Libvirt 7.1.0.
> > I configured and built libvirt based on instructions from
> > https://libvirt.org/compiling.html <https://libvirt.org/compiling.html>;;.
> > Now I developed a client program to create a VM using an XML file.As the
> > API for it is *virDomainCreateXML,* called this API by passing XML file
> > .It shows the following error.
> > undefined reference to `virDomainCreateXML'.
> > I included the header files containing the said API declaration.But need
> > to include the library also.
> > My question is where do the libvirt library located after building it.
>
> Yes, you need to pass -lvirt when linking. The library is installed
> wherever you told it to install. If you ran plain meson with no extra
> arguments, then 'meson install' installs library under /usr/local/lib/
> or /usr/local/lib64/. So you will need to pass -L/usr/local/lib or
> -L/usr/local/lib64 too to the linker.
>
> But there is this switch -Dsystem=true which tells meson to install into
> system directories:
>
> meson -Dsystem=true build
> meson install -C build
>
> with this you will not need to pass any extra -L arguments to the linker.
Note that the recommended way to obtain this information is via
pkg-config, using something like
$ pkg-config --cflags --libs libvirt
If you get an error about libvirt not being found, you probably need
to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
or something along those lines beforehand.
--
Andrea Bolognani / Red Hat / Virtualization
More information about the libvirt-users
mailing list