diff --git a/pressure-vessel/runtime.c b/pressure-vessel/runtime.c index bd119e12c46835988b144ba8f7f593be241fd1f5..d08f393019ea6bdf5980f2335eaeeadd12c309e2 100644 --- a/pressure-vessel/runtime.c +++ b/pressure-vessel/runtime.c @@ -6375,11 +6375,21 @@ pv_runtime_handle_alias (PvRuntime *self, target = g_build_filename ("/lib", arch->details->tuple, soname, NULL); g_info ("Found %s in runtime's /lib: %s", soname, target); } - else + else if (arch->multiarch_index == PV_PRIMARY_ARCHITECTURE) { return glnx_throw (error, "The expected library %s is missing from both the runtime " "and the \"overrides\" directory", soname); } + else + { + /* Not an error: for runtimes that only have full coverage of the + * primary architecture (in practice x86_64) and not secondary + * architectures (in practice i386), it's OK that e.g. libbz2.so.1.0 + * only exists for the primary architecture */ + g_debug ("%s not supported on secondary architecture %s by this runtime", + soname, arch->details->tuple); + return TRUE; + } target_base = glnx_basename (target);