Fariq Omar:
> Firstly, I have to edit the 00_prepare.sh to download the latest
> archlinux image from kernel.org. Seems like the script was outdated.
> But then it was failed once more while 'make qubes-vm or 'make
> vmm-xen-vm' due to the problem below. Any help will be appreciated.
> 
> --> Archlinux dist-package (makefile)
>   --> Building package in /home/user/qubes-src/vmm-xen
> sudo BACKEND_VMM=xen chroot
> "/home/user/qubes-builder/chroot-archlinux" su user -c 'cd
> "/home/user/qubes-src/vmm-xen" && cp archlinux/PKGBUILD* ./ && env
> http_proxy="" makepkg --syncdeps --noconfirm --skipinteg'
> ==> Making package: qubes-vm-xen 4.6.1-20 (Wed Sep 14 12:48:13 UTC 2016)
> ==> Checking runtime dependencies...
> ==> Checking buildtime dependencies...
> ==> Retrieving sources...
>   -> Found xen-4.6.1.tar.gz
>   -> Found series-vm.conf
>   -> Found apply-patches
> ==> WARNING: Skipping all source file integrity checks.
> ==> Extracting sources...
>   -> Extracting xen-4.6.1.tar.gz with bsdtar
> bsdtar: Failed to set default locale
> ==> Starting build()...
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i 
> ./patches.misc/qemu-tls-1.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i 
> ./patches.misc/qemu-tls-2.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.qubes/xen-shared-loop-losetup.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.qubes/xen-no-downloads.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.qubes/xen-hotplug-external-store.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.qubes/xen-tools-qubes-vm.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.qubes/vm-0001-hotplug-do-not-attempt-to-remove-containing-xenstore.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/libxc-fix-xc_gntshr_munmap-semantic.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/libvchan-Fix-cleanup-when-xc_gntshr_open-failed.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/0101-libvchan-create-xenstore-entries-in-one-transaction.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/0001-configure-Fix-when-no-libsystemd-compat-lib-are-avai.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/0001-libxc-prefer-using-privcmd-character-device.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/0001-tools-hotplug-Add-native-systemd-xendriverdomain.ser.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.security/xsa155-xen-0003-libvchan-Read-prod-cons-only-once.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.libxl/0001-libxl-trigger-attach-events-for-devices-attached-bef.patch
> + patch -s -F0 -E -p1 --no-backup-if-mismatch -i
> ./patches.misc/0001-systemd-use-standard-dependencies-for-xendriverdomai.patch
> /home/user/qubes-src/vmm-xen/PKGBUILD: line 49: autoreconf: command not found
> ==> ERROR: A failure occurred in build().
>     Aborting...
> /home/user/qubes-builder/qubes-src/builder-archlinux/Makefile.archlinux:120:
> recipe for target 'dist-package' failed
> make[2]: *** [dist-package] Error 2
> 

The script is not outdated so much as incomplete.  It merrily assumed
that the final component of the Archlinux release number was a counter,
but I now suspect it's actually the day-of-month.  Most months the ISO
is cut on the first day of the month, but this month it was cut on the
third.

You may override the release number without modifying the script by
exporting the following environment variable before building:

export ARCHLINUX_REL_VERSION=2016.09.03

This is, of course, not at all clear to the casual user and a legitimate
bug.

Secondly, as you note, the autoreconf command is missing from the build
chroot.  autoreconf is a component of autoconf, and it is sufficient to
add "autoconf" and "automake" or, more succinctly, "base-devel" to the
"pkgs" variable in prepare-chroot-builder.  I've not investigated what
changed here, but presumably base-devel used to be present by default or
as a dependency of something else, but ceased to be some time in the
last 9 months (when I last built the Qubes Archlinux template).  I've
submitted a trivial pull request to integrate this:

https://github.com/marmarek/qubes-builder-archlinux/pull/12

Alas, having cleared these obstacles, you'll hit another issue noted a
couple of weeks ago in the thread to which Foppe pointed you.  This one
was precipitated by the Archlinux update to glibc 2.24 in early August.
2.24 deprecated readlink_r, which is used by (at least) Xen 4.6;
meanwhile, Xen builds with deprecation warnings treated as compilation
errors.  The fix went into Xen 4.7 a few months back, but has not been
backported to 4.6.

The work-around reported by Jovan in the other thread involves pointing
at the Xen 4.7 branch of a couple of marmarek's development repos with a
custom builder.conf.  I don't know enough about Xen to say whether this
risks weird and wonderful interactions between the client libraries and
the host Xen, but I think the balance of probability is that is should
be okay to talk to an older host with a newer client of the same major
version number.

Let me know how you get on :)

-- 
You received this message because you are subscribed to the Google Groups 
"qubes-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to qubes-users+unsubscr...@googlegroups.com.
To post to this group, send email to qubes-users@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/qubes-users/6accf43d-27dc-39bc-9b5a-4476dc67b1f5%40riseup.net.
For more options, visit https://groups.google.com/d/optout.

Reply via email to