containers / krunvm

Create microVMs from OCI images
Apache License 2.0
1.41k stars 42 forks source link

Fails to build on a clean clone #35

Closed AnharMiah closed 10 months ago

AnharMiah commented 2 years ago

what did you do?

what was the outcome?

it failed to compile with the following error message:

error: failed to run custom build command for `krunvm v0.2.2 (/.../krunvm)`

Caused by:
  process didn't exit successfully: `/.../krunvm/target/release/build/krunvm-93a7e7b5f83e43bd/build-script-build` (exit status: 101)
  --- stderr
  Error from running 'asciidoctor': No such file or directory (os error 2)
  thread 'main' panicked at 'failed to generate man page: No such file or directory (os error 2)', build.rs:25:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed

what was the expected outcome?

it should compile on a clean fresh clone

what are you system/OS software versions?

dfaggioli commented 1 year ago

Well, when building something, you need to satisfy its dependencies. Here we see an unsatisfied dependency for asciidoctor. Basically, at some point, during the build process, something is trying to run the asciidoctor program, but that is nowhere to be found in the OS.

The solution would be to install it. :-)

I'm not sure if this is something that Rust should do automatically or anything. In openSUSE, that asciidoctor thing seems to come from a Ruby GEM, so I don't think it's under Rust control. But maybe I'm wrong...

AnharMiah commented 1 year ago

thanks @dfaggioli I'm aware that the issue is a missing dependency, however if you read the README this is what is shows:

image

It doesn't really state that asciidoctor is a required dependency, so someone who like me simply cloned down the repo and followed the README instructions didn't result in a compiled from source working binary.

In my mind I believe a good test of build instructions is that they're accurate and is not a matter of "but it works on my machine"

are there any other dependencies needed? I would be happy to submit an updated README that contains more accurate build instructions?

mtjhrc commented 10 months ago

Resolved in #46, added asciidoctor to build instructions.