reth icon indicating copy to clipboard operation
reth copied to clipboard

Makefile dependency issues: Missing checks for wget, cargo-nextest, and ef-tests

Open ametel01 opened this issue 7 months ago • 3 comments
trafficstars

Describe the feature

The project Makefile assumes several dependencies are pre-installed without checking for their presence or providing clear error messages when they're missing. This causes confusing failures during build and test processes.

Additional context

When running certain Makefile targets (particularly make ef-tests and test-related targets), the build fails with unclear errors when dependencies are missing:

  1. wget - Required for downloading Ethereum Foundation test vectors
  2. cargo-nextest - Required for running tests with the nexttest runner
  3. EF test vectors - Required to be downloaded before running certain tests

These dependencies aren't explicitly checked before use, so users encounter cryptic errors like:

  • wget: command not found
  • cargo: 'nextest' is not a cargo command
  • Test suite path does not exist: "testing/ef-tests/ethereum-tests/..."

Proposed Solution

Update the Makefile to:

  1. Check for required dependencies before using them
  2. Install dependencies automatically when possible (for Cargo tools)
  3. Provide clear error messages when manual installation is needed

Additional Notes

  • It would also be helpful to have a make setup target that installs all required dependencies at once

ametel01 avatar Mar 29 '25 00:03 ametel01