Files

49 lines
1.7 KiB
Markdown

# ImageMagick
ImageMagick 7 image manipulation toolkit: `magick`, `convert`,
`identify`, `mogrify`, `montage`, ... plus the MagickCore / MagickWand /
Magick++ libraries.
- Upstream: https://imagemagick.org/ (source: https://github.com/ImageMagick/ImageMagick)
- License: ImageMagick License (Apache-2.0 derived)
## How it is built
Standard autotools from the sha-pinned GitHub tag tarball; the default
modbuild hooks do `./configure --prefix=$PREFIX && make && make install`.
Built with the gcc/12.3.0 module (also a runtime dep — Magick++ needs
its libstdc++ on RHEL8). Version keys are the full upstream tag
(`7.1.2-30`), which the download URL uses as `${V}`.
Image-format delegates (PNG, JPEG, TIFF, ...) auto-enable from the
`-devel` RPMs present on the build host. If a needed format is missing,
install the RPM (e.g. `libpng-devel libjpeg-turbo-devel libtiff-devel`)
and rebuild.
## Building on Ra
```sh
module use unstable && module load modbuild/2.1.3
cd ImageMagick
modbuild build \
--tmpdir=/das/work/p21/p21515/.cache/Pmodules \
--distdir=/das/work/p21/p21515/.cache/Pmodules \
7.1.2-30
module use MX unstable && module load ImageMagick/7.1.2-30
```
## Verifying the install
```sh
which magick # -> /opt/psi/MX/ImageMagick/7.1.2-30/bin/magick
magick -version # version + enabled features
magick -list format | head # delegates that got enabled
magick rose: /tmp/rose.png # end-to-end: writes a PNG (needs libpng delegate)
```
## Adding a new version
Pick the tag from https://github.com/ImageMagick/ImageMagick/tags, add
version + tarball sha256 in `files/config.yaml` (`sha256sum` the
downloaded tag tarball), then build as above.