Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1514756 - ./configure --disable-ocaml breaks building common/mlpcre which breaks building daemon
Summary: ./configure --disable-ocaml breaks building common/mlpcre which breaks buildi...
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Virtualization Tools
Classification: Community
Component: libguestfs
Version: unspecified
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Richard W.M. Jones
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-11-18 11:01 UTC by jean-christophe manciot
Modified: 2017-11-18 12:39 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-11-18 12:39:41 UTC


Attachments (Terms of Use)
Build log (deleted)
2017-11-18 11:01 UTC, jean-christophe manciot
no flags Details

Description jean-christophe manciot 2017-11-18 11:01:07 UTC
Created attachment 1354641 [details]
Build log

Description of problem:
----------------------
I cannot build libguestfs from sources (https://github.com/libguestfs/libguestfs) due to the specified error.

Version-Release number of selected component (if applicable):
------------------------------------------------------------
v1.37.34

Steps to Reproduce:
------------------
-----------------
Configuring twice
-----------------
./autogen.sh --build=x86_64-pc-linux-gnu \
             --enable-fuse \
             --enable-golang \
             --disable-ocaml \
             --prefix=/usr --sysconfdir=/etc --localstatedir=/var
./autogen.sh --build=x86_64-pc-linux-gnu \
             --enable-fuse \
             --enable-golang \
             --disable-ocaml \
             --prefix=/usr --sysconfdir=/etc --localstatedir=/var
echo ---------
echo Compiling
echo ---------
make


Actual results:
--------------
...
File "md.ml", line 25, characters 0-90:
Warning 3: deprecated: [@@noalloc] should be used instead of "noalloc"
  OCAMLCMI mount.cmi
  OCAMLOPT mount.cmx
  OCAMLCMI parted.cmi
  OCAMLOPT parted.cmx
  OCAMLCMI listfs.cmi
  OCAMLOPT listfs.cmx
  OCAMLCMI realpath.cmi
  OCAMLOPT realpath.cmx
  OCAMLCMI statvfs.cmi
  OCAMLOPT statvfs.cmx
  OCAMLCMI inspect_types.cmi
  OCAMLOPT inspect_types.cmx
  OCAMLCMI inspect_utils.cmi
  OCAMLOPT inspect_utils.cmx
  OCAMLCMI inspect_fs_unix_fstab.cmi
  OCAMLOPT inspect_fs_unix_fstab.cmx
  OCAMLCMI inspect_fs_unix.cmi
  OCAMLOPT inspect_fs_unix.cmx
  OCAMLCMI inspect_fs_windows.cmi
  OCAMLOPT inspect_fs_windows.cmx
  OCAMLCMI inspect_fs.cmi
  OCAMLOPT inspect_fs.cmx
  OCAMLCMI inspect.cmi
  OCAMLOPT inspect.cmx
  OCAMLCMI callbacks.cmi
  OCAMLOPT callbacks.cmx
  OCAMLCMI daemon.cmi
  OCAMLOPT daemon.cmx
ocamlfind opt -output-obj -o camldaemon.o \
    -g -annot -safe-string -warn-error CDEFLMPSUVYZX+52-3 -package str,unix,hivex -I ../common/mlaugeas -I ../common/mlstdutils -I ../common/mlutils -I ../common/utils/.libs -I ../common/mlpcre -I ../common/mlpcre/.libs -I ../gnulib/lib/.libs \
    -linkpkg \
    mlaugeas.cmxa \
    mlpcre.cmxa \
    mlstdutils.cmxa \
    mlcutils.cmxa \
    utils.cmx structs.cmx optgroups.cmx sysroot.cmx mountable.cmx chroot.cmx blkid.cmx btrfs.cmx devsparts.cmx file.cmx filearch.cmx is.cmx ldm.cmx link.cmx lvm.cmx findfs.cmx md.cmx mount.cmx parted.cmx listfs.cmx realpath.cmx statvfs.cmx inspect_types.cmx inspect_utils.cmx inspect_fs_unix_fstab.cmx inspect_fs_unix.cmx inspect_fs_windows.cmx inspect_fs.cmx inspect.cmx callbacks.cmx daemon.cmx
File "_none_", line 1:
Error: Cannot find file mlpcre.cmxa
Makefile:4823: recipe for target 'camldaemon.o' failed

Additional info:
---------------
# find git-libguestfs/ -name "mlpcre.cmxa"
# find git-libguestfs/ -name "*.cmxa"
git-libguestfs/common/mlaugeas/mlaugeas.cmxa
git-libguestfs/common/mlstdutils/mlstdutils.cmxa
git-libguestfs/common/mlutils/mlcutils.cmxa

Also, I find it a bit strange that there are some mentions of ocaml in the attached build log, considering the fact that ocaml has been disabled during the configure process.

Comment 1 Richard W.M. Jones 2017-11-18 12:25:06 UTC
There is a build bug here.  When --disable-ocaml is specified
the common/mlpcre directory is skipped.  However it is required
for the daemon.

If you remove --disable-ocaml then you'll be able to get past
this problem temporarily.

--disable-ocaml only disables the bindings.  OCaml is now required
to build libguestfs, even from the tarball (see upstream
commit 318ca68408837fd506c7d02ae64ad68c07c64d16).


Note You need to log in before you can comment on or make changes to this bug.