Hi Rich, I've consistently been hitting issues with guestfs-tools
builds. I have workarounds but they are annoying.
1) With a fresh checkout I run:
$ git submodule init
$ git submodule update
$ autoreconf -if
$ ./configure
$ make -j8
I will get these errors:
make[3]: Entering directory '/home/crobinso/src/guestfs-tools/builder'
GEN virt-builder
GEN virt-builder-repository
/usr/bin/ld: virt_builder_repository-index-scan.o: relocation
R_X86_64_32S against `.rodata' can not be used when making a PIE object;
recompile with -fPIE
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
File "caml_startup", line 1:
Error: Error during linking (exit code 1)
make[3]: *** [Makefile:1261: virt-builder-repository] Error 2
make[3]: *** Waiting for unfinished jobs....
/usr/bin/ld: virt_builder-index-scan.o: relocation R_X86_64_32S against
`.rodata' can not be used when making a PIE object; recompile with -fPIE
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
File "caml_startup", line 1:
Error: Error during linking (exit code 1)
make[3]: *** [Makefile:1257: virt-builder] Error 2
make[3]: Leaving directory '/home/crobinso/src/guestfs-tools/builder'
I can fix it with `make -j8 CFLAGS="-fPIE -fPIC"` but only after doing a
full `make clean`.
2) If I make a trivial change in common/, like adding whitespace in
common/mlcustomize/customize_run.ml, subsequent guestfs-tools build will
failu with:
make[2]: Entering directory '/home/crobinso/src/guestfs-tools/customize'
GEN virt-customize
File "_none_", line 1:
Error: Files customize_main.cmx and ../common/mlcustomize/mlcustomize.cmxa
make inconsistent assumptions over implementation Customize_run
Again, a `make clean` and rebuild will fix it.
Are these expected, or is something wrong with my environment? Host is
Fedora 41
Thanks,
Cole