At my current job, we use the Linux build of vcf_validator in Docker. This is a limitation because the image is for the amd64 architecture, and with the advent of Apple Silicon, we need arm64 images for the M1 /M2 chipset.
After much trial and error, I managed to get a Dockerized build working.
There are some notable changes from simply using install_dependencies.sh:
using odbv2.5.0-b.23 (instead of v2.4.0) as that has adjustments so it can compile on arm64 (according to Code Synthesis, maker of ODB, even though it is beta, it is stable).
building odb via build2 (instead of downloading a binary)
building libodb via build2 (instead of building it in install_dependencies.sh)
had to add -Wno-narrowing to compilation step to avoid errors (doesn't appear to break anything; test pass)
libz, libbz2, libboost-* installed via apt
Contributing this as it may be useful to someone else.
One can test out my image:
docker pull dougdonohoe/vcf-validator:0.9.4
I updated the README.md with more detail and example usage.
At my current job, we use the Linux build of
vcf_validator
in Docker. This is a limitation because the image is for theamd64
architecture, and with the advent of Apple Silicon, we needarm64
images for the M1 /M2 chipset.After much trial and error, I managed to get a Dockerized build working.
There are some notable changes from simply using
install_dependencies.sh
:odb
v2.5.0-b.23
(instead ofv2.4.0
) as that has adjustments so it can compile on arm64 (according to Code Synthesis, maker of ODB, even though it is beta, it is stable).odb
viabuild2
(instead of downloading a binary)libodb
viabuild2
(instead of building it ininstall_dependencies.sh
)-Wno-narrowing
to compilation step to avoid errors (doesn't appear to break anything; test pass)libz
,libbz2
,libboost-*
installed viaapt
Contributing this as it may be useful to someone else.
One can test out my image:
I updated the
README.md
with more detail and example usage.