Mark van Dijk
2012-Aug-10 09:54 UTC
xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
After someone suggested alpine linux makes a nice dom0 system I decided to give it a go. Unfortunately the build process breaks: --- AR i386-dm/libqemu.a LINK i386-dm/qemu-dm vl.o: In function `dynticks_stop_timer'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1603: undefined reference to `timer_delete'' vl.o: In function `dynticks_start_timer'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1585: undefined reference to `timer_create'' vl.o: In function `dynticks_rearm_timer'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1620: undefined reference to `timer_gettime'' /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1633: undefined reference to `timer_settime'' collect2: ld returned 1 exit status make[4]: *** [qemu-dm] Error 1 make[4]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir-remote/i386-dm'' make[3]: *** [subdir-i386-dm] Error 2 make[3]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir-remote'' make[2]: *** [subdir-install-qemu-xen-traditional-dir] Error 2 make[2]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' make[1]: *** [subdirs-install] Error 2 make[1]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' make: *** [install-tools] Error 2 --- I found this bug occurred to someone back in february ''12 when someone posted the following message and patch to the ML: http://lists.xen.org/archives/html/xen-devel/2012-02/msg01475.html But I am either not patching the correct file or this patch is not working. I was trying a couple of different solutions just to see how I could get it to work but I''ll admit this is like doing rocket science as a third grader. This is what I tried next to the previously named patch: http://pastebin.com/U39H38T7 But the end result: --- LINK qemu-ga CC libdis/i386-dis.o LINK qemu-nbd cutils.o: In function `strtosz_suffix_unit'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir/cutils.c:354: undefined reference to `__isnan'' /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' collect2: ld returned 1 exit status make[3]: *** [qemu-ga] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir-remote'' make[2]: *** [subdir-all-qemu-xen-dir] Error 2 make[2]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' make[1]: *** [subdirs-install] Error 2 make[1]: Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' make: *** [install-tools] Error 2 --- Where do I go from here? -- Stay in touch, Mark van Dijk. ,-------------------------------- ----------------------------'' Fri Aug 10 09:29 UTC 2012 Today is Boomtime, the 3rd day of Bureaucracy in the YOLD 3178
Stefano Stabellini
2012-Aug-10 10:17 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
Roger should have a better idea than me but he is currently on vacation. On Fri, 10 Aug 2012, Mark van Dijk wrote:> After someone suggested alpine linux makes a nice dom0 system I decided > to give it a go. Unfortunately the build process breaks: > > --- > AR i386-dm/libqemu.a > LINK i386-dm/qemu-dm > vl.o: In function `dynticks_stop_timer'': > /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1603: > undefined reference to `timer_delete'' vl.o: In function > `dynticks_start_timer'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1585: > undefined reference to `timer_create'' vl.o: In function > `dynticks_rearm_timer'': /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1620: > undefined reference to > `timer_gettime'' /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir/vl.c:1633: > undefined reference to `timer_settime'' collect2: ld returned 1 exit > status make[4]: *** [qemu-dm] Error 1 make[4]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir-remote/i386-dm'' > make[3]: *** [subdir-i386-dm] Error 2 make[3]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-traditional-dir-remote'' > make[2]: *** [subdir-install-qemu-xen-traditional-dir] Error 2 make[2]: > Leaving directory `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' > make[1]: *** [subdirs-install] Error 2 make[1]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' make: *** > [install-tools] Error 2 --- > > I found this bug occurred to someone back in february ''12 when someone > posted the following message and patch to the ML: > > http://lists.xen.org/archives/html/xen-devel/2012-02/msg01475.html > > But I am either not patching the correct file or this patch is not > working. I was trying a couple of different solutions just to see how I > could get it to work but I''ll admit this is like doing rocket science > as a third grader. This is what I tried next to the previously named > patch: > > http://pastebin.com/U39H38T7 > > But the end result: > > --- > LINK qemu-ga > CC libdis/i386-dis.o > LINK qemu-nbd > cutils.o: In function `strtosz_suffix_unit'': > /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir/cutils.c:354: > undefined reference to `__isnan'' > /adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir/cutils.c:357: > undefined reference to `modf'' > collect2: ld returned 1 exit status > make[3]: *** [qemu-ga] Error 1 > make[3]: *** Waiting for unfinished jobs.... > make[3]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools/qemu-xen-dir-remote'' > make[2]: *** [subdir-all-qemu-xen-dir] Error 2 > make[2]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' > make[1]: *** [subdirs-install] Error 2 > make[1]: Leaving directory > `/adm/anderson/xen-unstable/src/xen-git-4.2.0/tools'' > make: *** [install-tools] Error 2 > --- > > Where do I go from here?This is upstream QEMU that is breaking, not qemu-xen-traditional (see the code path: qemu-xen-dir-remote instead of qemu-xen-traditional-dir-remote). Moreover it is breaking compiling qemu-nbd that we aren''t currently using. I would try out the following change to the configure script: diff --git a/configure b/configure index 027a718..9cc8e19 100755 --- a/configure +++ b/configure @@ -2614,11 +2613,7 @@ cat > $TMPC <<EOF int main(void) { return clock_gettime(CLOCK_REALTIME, NULL); } EOF -if compile_prog "" "" ; then - : -elif compile_prog "" "-lrt" ; then - LIBS="-lrt $LIBS" -fi +LIBS="-lrt -lm $LIBS" if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \ "$aix" != "yes" -a "$haiku" != "yes" ; then
Mark van Dijk
2012-Aug-10 12:06 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
> This is upstream QEMU that is breaking, not qemu-xen-traditional (see > the code path: qemu-xen-dir-remote instead of > qemu-xen-traditional-dir-remote).Ah, I didn''t know, it''s a little bit confusing. Would you like me to submit a bug report with them?> Moreover it is breaking compiling qemu-nbd that we aren''t currently > using. I would try out the following change to the configure script: > (..snip..)Yes, that works, thanks! But it gives a new error which I couldn''t solve yet: --- LINK qemu-nbd cutils.o: In function `strtosz_suffix_unit'': tools/qemu-xen-dir/cutils.c:354: undefined reference to `__isnan'' tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' collect2: ld returned 1 exit status --- Any idea there? Also -- If we''re not using qemu-nbd then could you suggest a workaround please? I''d prefer something that can be patched or issued before I run the make process. (I run the make process twice now - if the first run fails, patch, then run again and if it fails again error out) Thanks so far, Mark -- Stay in touch, Mark van Dijk. ,-------------------------------- ----------------------------'' Fri Aug 10 12:02 UTC 2012 Today is Boomtime, the 3rd day of Bureaucracy in the YOLD 3178
Stefano Stabellini
2012-Aug-10 12:16 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
On Fri, 10 Aug 2012, Mark van Dijk wrote:> > This is upstream QEMU that is breaking, not qemu-xen-traditional (see > > the code path: qemu-xen-dir-remote instead of > > qemu-xen-traditional-dir-remote). > > Ah, I didn''t know, it''s a little bit confusing. Would you like me to > submit a bug report with them? > > > Moreover it is breaking compiling qemu-nbd that we aren''t currently > > using. I would try out the following change to the configure script: > > (..snip..) > > Yes, that works, thanks! But it gives a new error which I couldn''t > solve yet: > > --- > LINK qemu-nbd > > cutils.o: In function `strtosz_suffix_unit'': > > tools/qemu-xen-dir/cutils.c:354: undefined reference to > `__isnan'' > > tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' > collect2: ld returned 1 exit status > --- > > Any idea there?It is another "-lm" missing somewhere.> Also -- If we''re not using qemu-nbd then could you suggest a > workaround please? I''d prefer something that can be patched or > issued before I run the make process. (I run the make process > twice now - if the first run fails, patch, then run again and if it > fails again error out)You can disable qemu-nbd altogether with the following patch: diff --git a/configure b/configure index 027a718..f05d3c5 100755 --- a/configure +++ b/configure @@ -2993,12 +2988,6 @@ if test "$softmmu" = yes ; then virtfs=no fi fi - if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then - tools="qemu-nbd\$(EXESUF) $tools" - if [ "$guest_agent" = "yes" ]; then - tools="qemu-ga\$(EXESUF) $tools" - fi - fi fi if test "$smartcard_nss" = "yes" ; then tools="vscclient\$(EXESUF) $tools"
Internecto List Subscriber
2012-Aug-10 14:37 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
On Fri, 10 Aug 2012 13:16:12 +0100 Stefano Stabellini <stefano.stabellini@eu.citrix.com> wrote:> On Fri, 10 Aug 2012, Mark van Dijk wrote: > > > This is upstream QEMU that is breaking, not qemu-xen-traditional > > > (see the code path: qemu-xen-dir-remote instead of > > > qemu-xen-traditional-dir-remote). > > > > Ah, I didn''t know, it''s a little bit confusing. Would you like me to > > submit a bug report with them? > > > > > Moreover it is breaking compiling qemu-nbd that we aren''t > > > currently using. I would try out the following change to the > > > configure script: (..snip..) > > > > Yes, that works, thanks! But it gives a new error which I couldn''t > > solve yet: > > > > --- > > LINK qemu-nbd > > > > cutils.o: In function `strtosz_suffix_unit'': > > > > tools/qemu-xen-dir/cutils.c:354: undefined reference to > > `__isnan'' > > > > tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' > > collect2: ld returned 1 exit status > > --- > > > > Any idea there? > > It is another "-lm" missing somewhere.Ok, well I''ll leave that to the people who can actually make a healthy patch out of this.> > > > Also -- If we''re not using qemu-nbd then could you suggest a > > workaround please? I''d prefer something that can be patched or > > issued before I run the make process. (I run the make process > > twice now - if the first run fails, patch, then run again and if it > > fails again error out) > > You can disable qemu-nbd altogether with the following patch: > (..snip..)While I couldn''t find the proper configure script for this (I even grepped for stuff like ''virtfs=no'' but got nothing), it was a good starting point. So thanks for pointing me in the right direction :) For now building unstable on Alpine Linux works with the following patch: http://pastebin.com/QU8XuM0a -- Stay in touch, Mark van Dijk. ,-------------------------------- ----------------------------'' Fri Aug 10 13:48 UTC 2012 Today is Boomtime, the 3rd day of Bureaucracy in the YOLD 3178
Roger Pau Monne
2012-Aug-14 10:36 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
Internecto List Subscriber wrote:> On Fri, 10 Aug 2012 13:16:12 +0100 > Stefano Stabellini <stefano.stabellini@eu.citrix.com> wrote: > >> On Fri, 10 Aug 2012, Mark van Dijk wrote: >>>> This is upstream QEMU that is breaking, not qemu-xen-traditional >>>> (see the code path: qemu-xen-dir-remote instead of >>>> qemu-xen-traditional-dir-remote). >>> Ah, I didn''t know, it''s a little bit confusing. Would you like me to >>> submit a bug report with them? >>> >>>> Moreover it is breaking compiling qemu-nbd that we aren''t >>>> currently using. I would try out the following change to the >>>> configure script: (..snip..) >>> Yes, that works, thanks! But it gives a new error which I couldn''t >>> solve yet: >>> >>> --- >>> LINK qemu-nbd >>> >>> cutils.o: In function `strtosz_suffix_unit'': >>> >>> tools/qemu-xen-dir/cutils.c:354: undefined reference to >>> `__isnan'' >>> >>> tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' >>> collect2: ld returned 1 exit status >>> --- >>> >>> Any idea there? >> It is another "-lm" missing somewhere. > > Ok, well I''ll leave that to the people who can actually make a healthy > patch out of this. > >> >>> Also -- If we''re not using qemu-nbd then could you suggest a >>> workaround please? I''d prefer something that can be patched or >>> issued before I run the make process. (I run the make process >>> twice now - if the first run fails, patch, then run again and if it >>> fails again error out) >> You can disable qemu-nbd altogether with the following patch: >> (..snip..) > > While I couldn''t find the proper configure script for this (I even > grepped for stuff like ''virtfs=no'' but got nothing), it was a good > starting point. So thanks for pointing me in the right direction :) > > For now building unstable on Alpine Linux works with the following > patch: > > http://pastebin.com/QU8XuM0aNatanael Copa sent a patch to Qemu-devel some months ago to fix the build of Qemu on uClibc, but it seems like it was ignored: http://lists.gnu.org/archive/html/qemu-devel/2012-06/msg02388.html Could you try if that still applies and fixes your problems? Roger.
Mark van Dijk
2012-Aug-15 20:47 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
> >>>> This is upstream QEMU that is breaking, not qemu-xen-traditional > >>>> (see the code path: qemu-xen-dir-remote instead of > >>>> qemu-xen-traditional-dir-remote). > >>> Ah, I didn''t know, it''s a little bit confusing. Would you like me > >>> to submit a bug report with them? > >>> > >>>> Moreover it is breaking compiling qemu-nbd that we aren''t > >>>> currently using. I would try out the following change to the > >>>> configure script: (..snip..) > >>> Yes, that works, thanks! But it gives a new error which I couldn''t > >>> solve yet: > >>> > >>> --- > >>> LINK qemu-nbd > >>> > >>> cutils.o: In function `strtosz_suffix_unit'': > >>> > >>> tools/qemu-xen-dir/cutils.c:354: undefined reference to > >>> `__isnan'' > >>> > >>> tools/qemu-xen-dir/cutils.c:357: undefined reference to `modf'' > >>> collect2: ld returned 1 exit status > >>> --- > >>> > >>> Any idea there? > >> It is another "-lm" missing somewhere. > > > > Ok, well I''ll leave that to the people who can actually make a > > healthy patch out of this. > > > >> > >>> Also -- If we''re not using qemu-nbd then could you suggest a > >>> workaround please? I''d prefer something that can be patched or > >>> issued before I run the make process. (I run the make process > >>> twice now - if the first run fails, patch, then run again and if > >>> it fails again error out) > >> You can disable qemu-nbd altogether with the following patch: > >> (..snip..) > > > > While I couldn''t find the proper configure script for this (I even > > grepped for stuff like ''virtfs=no'' but got nothing), it was a good > > starting point. So thanks for pointing me in the right direction :) > > > > For now building unstable on Alpine Linux works with the following > > patch: > > > > http://pastebin.com/QU8XuM0a > > Natanael Copa sent a patch to Qemu-devel some months ago to fix the > build of Qemu on uClibc, but it seems like it was ignored: > > http://lists.gnu.org/archive/html/qemu-devel/2012-06/msg02388.html > > Could you try if that still applies and fixes your problems?Hi Roger, thanks for following up. I will try this tomorrow and mail the results. Also, for the sake of being as thourough as possible -- just now I sent a bug report about HVM issues. This is occurring on the same machine but I also had HVM problems when it was still running ArchLinux. So I doubt those are related but I want to make sure people know this regards the same machine. -- Good night, Mark van Dijk. ,-------------------------------- ----------------------------'' Wed Aug 15 20:47 UTC 2012 Today is Boomtime, the 8th day of Bureaucracy in the YOLD 3178
Mark van Dijk
2012-Aug-16 09:56 UTC
Re: xen 4.2.0-rc3-pre: building failure on alpine linux / uclibc
> Natanael Copa sent a patch to Qemu-devel some months ago to fix the > build of Qemu on uClibc, but it seems like it was ignored: > > http://lists.gnu.org/archive/html/qemu-devel/2012-06/msg02388.html > > Could you try if that still applies and fixes your problems?Hi Roger, I haven''t tested it yet; this morning I noticed that ncopa and nenolod, the alpine devs, got Xen 4.1.3 to work with various patches. The following url has the working alpinelinux build: http://git.alpinelinux.org/cgit/aports/tree/main/xen It''s probably wisest for me to take a step back and contact them first with regards to xen-unstable.hg and alpine linux, so that''s what I''ll do. Regards, Mark