Open JKelle opened 2 years ago
Hi @JKelle, thank you for opening the issue. The bioformats_package.jar should contain all the required dependencies, and having checked the 6.10.0 version at the download link the jxr dependencies are included as expected.
It very much looks as though the problem is related to your 4th question, the jxrlib dependency (which is included in the package jar) does not appear to have located a native library for the M1 arm architecture, we would likely need arm64 builds of the jxrlib to get this working.
What is interesting is that your FIJI install can open the same JPEG-XR file. Have you installed any additional plugins or is it a base FIJI install?
I can reproduce this problem on an M1 Mac.
.czi files with JPEG-XR compression require the jxrlib library to decompress image data. As @dgault says, jxrlib is included in bioformats_package.jar, but does not yet include M1 support. I have opened an issue to fix this on the jxrlib repository: https://github.com/glencoesoftware/jxrlib/issues/30
Most Fiji installs include their own JRE, which for Macs is typically x86_64 architecture. You can check this by clicking Plugins > Utilities > ImageJ Properties
and looking for the os.arch
line in the window that pops up. jxrlib does include support for x86_64. At the moment, using an x86_64 JRE or JDK is the only workaround for this problem.
Thank you @melissalinkert for confirming it's an architecture issue, and for opening an issue with jxrlib! Once jxrlib adds an M1 build, will that be included in an updated version of bioformats_package.jar?
Yes, once there is a jxrlib build for M1 we will ensure to have a follow up Bio-Formats release with the included library.
I get the following
java.lang.UnsatisfiedLinkError
when I try to open a .czi image:I'm running from my M1 Mac, using macOS Monterey version 12.3.1. I'm running the latest (6.10.0)
bioformats_package.jar
which I downloaded from https://downloads.openmicroscopy.org/bio-formats/6.10.0/artifacts/ . I'm running the jar via Terminal withjava -jar bioformats_package.jar
. I also tried to open this .czi image in an ubuntu:20.04 arm64 docker container, and I got the same Exception (though in this case I ran bioformats via python-bioformats instead of running the jar directly).I can open other .czi files, just not this one. I'm not sure why this one is different, but based on the error message I'm guessing it's compressed with JPEG-XR format. And I'm also inferring that
bioformats_package.jar
didn't install the ome.jxrlib dependency? Or is that something I need to install separately?I have Fiji installed with the Bioformats plugin, and it can open this .czi file just fine. I explicitly used the Bioformats importer (Plugins > Bio-Formats > Bio-Formats Importer), not the default (File > Open) file opening functionality. After looking around Fiji's directory, I see the following jars:
These jars align with those listed in the documentation for changing the bioformats version for Fiji: https://docs.openmicroscopy.org/bio-formats/6.10.0/users/fiji/index.html . However, that doc says to download these jars from http://downloads.openmicroscopy.org/bio-formats/ but I don't see these jars for any recent versions. Where can I get these jars from?
Questions
bioformats_package.jar
missing the ome.jxrlib dependency? And/or do I need to install this separately?bioformats_package.jar
?