Building Package or Kernel Modules Using a Script
You can use a script to build a single Photon OS package without the need to setup a complete Photon build workspace. You just need a .spec
specification file and the source files. You can place the source files and the specification files in the same folder, or provide a URL for the source file location, and then run the build_spec.sh
script.
The script performs the following steps:
- Creates sandbox using docker
- Installs build tools and
.spec
build requirements from the Photon OS repository - Runs
rpmbuild
Result: You have a native Photon OS RPM package.
The build-spec.sh
script is located in the photon/tools/scripts/
folder.
Prerequisites
Before you run the build-spec.sh
script, perform the following steps:
- Ensure you have any Linux OS with a docker daemon running.
- Place the source and RPM
.spec
files in the same folder or provide a URL for the source files.
Procedure
Run the script. Provide the RPM .spec
file name, including absolute or relative path, as an argument:
./photon/tools/scripts/build_spec.sh <path-to-rpm_spec_file.spec> [$STAGEDIR]
You can specify the staging directory ($STAGEDIR
) where you want to store the generated RPM files and build logs. If you do not specify a staging directory, the generated output files are stored in the directory that contains the spec file.
The following topics show examples to build packages based on various use cases.