[Libguestfs] [libguestfs] Problem using virt-sysprep with RBD images
Richard W.M. Jones
rjones at redhat.com
Wed Nov 6 19:22:21 UTC 2013
On Wed, Nov 06, 2013 at 11:17:14AM -0700, Jon wrote:
> I tried to comment this out and recompile guestfs, but I get an error:
>
> make[2]: Entering directory `/root/libguestfs-1.25.6/builder'
> ocamlfind ocamlopt -g -warn-error CDEFLMPSUVYZX -package str,unix -I
> ../src/.libs -I ../ocaml -I ../mllib -package gettext-stub -c builder.ml -o
> builder.cmx
> File "builder.ml", line 53, characters 4-14:
> Error: Unbound value List.iteri
> make[2]: *** [builder.cmx] Error 2
> make[2]: Leaving directory `/root/libguestfs-1.25.6/builder'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/root/libguestfs-1.25.6'
> make: *** [all] Error 2
Hmm, this is actually another bug :-( The attached patch should fix
this one and allow you to compile libguestfs with the older version of
OCaml that didn't have List.iteri.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top
-------------- next part --------------
>From a2ef259c3cf41f96140cff238fb6539de1db263c Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones at redhat.com>
Date: Wed, 6 Nov 2013 19:19:20 +0000
Subject: [PATCH] builder: Old OCaml didn't have List.iteri, so add a utility
function.
---
builder/builder.ml | 2 +-
mllib/common_utils.ml | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/builder/builder.ml b/builder/builder.ml
index a5a4dfe..21023fa 100644
--- a/builder/builder.ml
+++ b/builder/builder.ml
@@ -50,7 +50,7 @@ let main () =
eprintf "command line:";
List.iter (eprintf " %s") (Array.to_list Sys.argv);
prerr_newline ();
- List.iteri (
+ iteri (
fun i (source, fingerprint) ->
eprintf "source[%d] = (%S, %S)\n" i source fingerprint
) sources
diff --git a/mllib/common_utils.ml b/mllib/common_utils.ml
index e7ed3fe..953638f 100644
--- a/mllib/common_utils.ml
+++ b/mllib/common_utils.ml
@@ -164,6 +164,13 @@ let rec filter_map f = function
| Some y -> y :: filter_map f xs
| None -> filter_map f xs
+let iteri f xs =
+ let rec loop i = function
+ | [] -> ()
+ | x :: xs -> f i x; loop (i+1) xs
+ in
+ loop 0 xs
+
(* Timestamped progress messages, used for ordinary messages when not
* --quiet.
*)
--
1.8.3.1
More information about the Libguestfs
mailing list