Samuel Thibault
2008-May-19 15:16 UTC
[Xen-devel] error while static linking of libxenctrl and libxenguest
Hello, When statically linking the following program: #include <stdio.h> #include <xenctrl.h> #include <xenguest.h> int main(void) { printf("%p\n", xc_domain_resume); printf("%p\n", xc_domain_save); return 0; } gcc -static test.c -o test -lxenguest -lxenctrl -lpthread -lz we get /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenctrl.a(xc_private.o): In function `lock_pages'': /home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xc_private.c:130: multiple definition of `lock_pages'' /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenguest.a(xg_private.o):/home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xg_private.c:15: first defined here /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenctrl.a(xc_private.o): In function `unlock_pages'': /home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xc_private.c:142: multiple definition of `unlock_pages'' /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenguest.a(xg_private.o):/home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xg_private.c:24: first defined here Since libxenguest depends on libxenctrl anyway, shouldn''t it use xc_private''s lock/unlock functions? Samuel _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2008-May-20 07:30 UTC
Re: [Xen-devel] error while static linking of libxenctrl and libxenguest
That would make sense. Please send a patch. -- Keir On 19/5/08 16:16, "Samuel Thibault" <samuel.thibault@eu.citrix.com> wrote:> Hello, > > When statically linking the following program: > > #include <stdio.h> > #include <xenctrl.h> > #include <xenguest.h> > > int main(void) { > printf("%p\n", xc_domain_resume); > printf("%p\n", xc_domain_save); > return 0; > } > > gcc -static test.c -o test -lxenguest -lxenctrl -lpthread -lz > > we get > > /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenctrl.a(xc_private.o) > : In function `lock_pages'': > /home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xc_private.c:130: multiple > definition of `lock_pages'' > /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenguest.a(xg_private.o > ):/home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xg_private.c:15: first > defined here > /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenctrl.a(xc_private.o) > : In function `unlock_pages'': > /home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xc_private.c:142: multiple > definition of `unlock_pages'' > /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../../lib/libxenguest.a(xg_private.o > ):/home/sthibault/xen-unstable-stubdom.hg/tools/libxc/xg_private.c:24: first > defined here > > Since libxenguest depends on libxenctrl anyway, shouldn''t it use > xc_private''s lock/unlock functions? > > Samuel > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel