Ensure build-essential is installed wherever make compiles source on Debian/Ubuntu#4380
Draft
Ensure build-essential is installed wherever make compiles source on Debian/Ubuntu#4380
Conversation
…n/Ubuntu Following PR #4368, starting from Ubuntu 25.10 build-essential is no longer pre-installed by default. Add explicit build-essential installation to all places where make is used to compile source code on Debian/Ubuntu systems. Co-authored-by: LiliDeng <10083705+LiliDeng@users.noreply.github.com> Agent-Logs-Url: https://github.com/microsoft/lisa/sessions/20ac2b2b-66ff-438b-9e01-b6339b861500
Copilot created this pull request from a session on behalf of
LiliDeng
March 23, 2026 08:27
View session
Collaborator
|
We could start using the distro package managers built-in ability to install package dependencies for source builds: apt-get, dnf, and zypper all allow you to download and build source .deb/.srpm packages. They need to have a list of build dependencies in the package, naturally. You can just enable the distro source repositories and install the build dependencies for a package from there, instead of trying to track an ever-changing list of package names. I started implementing this but got bogged down and ended up cutting it. I would fully start using the feature if it were available, though. my reference branch: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ubuntu 25.10+ no longer ships
build-essentialby default (see PR #4368). Any test or tool that compiles source code viamakeon Debian/Ubuntu must now explicitly install it.Changes
Audited all
node.tools[Make]/make.make*()call sites and addedbuild-essentialto the Debian/Ubuntu dependency list in each:lisa/tools/—stress_ng,hibernation_setup,netperf,vdsotest,fio,iperf3,nvmecli,mdadmlisa/microsoft/testsuites/ltp/—ltplisa/microsoft/testsuites/xfstests/—xfstests(debian_dep)lisa/microsoft/testsuites/kvm/—kvm_unit_tests_tool(deps)lisa/microsoft/testsuites/libvirt/—libvirt_tck_tool(deps)lisa/microsoft/testsuites/osu/—osusuitelisa/microsoft/testsuites/dpdk/—dpdkovs,rdmacore(source build deps),dpdknffgolisa/microsoft/testsuites/cvm/—cvm_attestation_toolFor files with OS-specific package lists,
build-essentialis added directly to the Debian/Ubuntu branch. For genericdepslists that useis_package_in_repo(e.g.kvm_unit_tests_tool,libvirt_tck_tool), it is safe to add since non-Debian repos will filter it out.