Introduction to libjxl
        
        
          The libjxl package contains the
          reference implementation of the JPEG XL image format.
        
        
          This package is known to build and work properly using an LFS 12.2
          platform.
        
        
          Package Information
        
        
        
          libjxl Dependencies
        
        
          Required
        
        
          Brotli-1.1.0, CMake-3.30.2, giflib-5.2.2, highway-1.2.0,
          Little
          CMS-2.16, libjpeg-turbo-3.0.1, and libpng-1.6.43
        
        
          Recommended
        
        
          gdk-pixbuf-2.42.12 (for the plugin)
        
        
          Optional
        
        
          Doxygen-1.12.0 and Graphviz-12.1.0 (for
          documentation), Java-22.0.2 (for the JAR), libavif-1.1.1, libwebp-1.4.0,
          gtest, OpenEXR, sjpeg, and skcms
        
       
      
        
          Installation of libjxl
        
        
          Install libjxl by running the
          following commands:
        
        mkdir build &&
cd    build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr             \
      -D CMAKE_BUILD_TYPE=Release              \
      -D BUILD_TESTING=OFF                     \
      -D BUILD_SHARED_LIBS=ON                  \
      -D JPEGXL_ENABLE_SKCMS=OFF               \
      -D JPEGXL_ENABLE_SJPEG=OFF               \
      -D JPEGXL_ENABLE_PLUGINS=ON              \
      -D JPEGXL_INSTALL_JARDIR=/usr/share/java \
      -G Ninja ..                              &&
ninja
        
          This package does come with a test suite, but it requires gtest,
          which is not in BLFS.
        
        
          Now, as the root user:
        
        ninja install &&
gdk-pixbuf-query-loaders --update-cache
       
      
        
          Command Explanations
        
        
          gdk-pixbuf-query-loaders
          --update-cache: This command regenerates the
          GDK Pixbuf loader cache so that it
          is aware of the JPEG-XL loader.
        
        
          -D BUILD_TESTING=OFF: This
          parameter disables the tests because they require gtest, which is not
          in BLFS. If you wish to run the tests and have gtest installed,
          remove this parameter.
        
        
          -D BUILD_SHARED_LIBS=ON:
          This parameter enables building shared versions of the libraries
          instead of static ones.
        
        
          -D JPEGXL_ENABLE_SKCMS=OFF:
          This parameter disables building support for Skia's skcms since it is not necessary for BLFS
          purposes and requires skcms.
        
        
          -D JPEGXL_ENABLE_SJPEG=OFF:
          This parameter disables support for SimpleJPEG since it is not
          necessary for BLFS purposes and requires sjpeg.
        
        
          -D
          JPEGXL_ENABLE_PLUGINS=ON: This parameter enables Plugin
          support, which creates plugins for gdk-pixbuf-2.42.12 if the package is
          installed.
        
        
          -D
          JPEGXL_INSTALL_JARDIR=/usr/share/java: This parameter
          places the JAR file for JPEG XL support in the correct directory if
          Java-22.0.2 is installed.
        
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              benchmark_xl, cjxl, djxl, and
              jxlinfo
            
            
              Installed Libraries:
              libjxl.so, libjxl_cms.so,
              libjxl_extras_codec.so, libjxl_jni.so, libjxl_threads.so, and
              libpixbufloader-jxl.so (in
              /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders)
            
            
              Installed Directories:
              /usr/include/jxl
            
           
         
        
          
            Short Descriptions
          
          
            
              
              
            
            
              
                | 
                    benchmark_xl
                   | 
                    runs performance benchmarks against libjxl
                   | 
              
                | 
                    cjxl
                   | 
                    compresses images into JPEG XL format
                   | 
              
                | 
                    djxl
                   | 
                    decompresses images from JPEG XL format into other
                    formats
                   | 
              
                | 
                    jxlinfo
                   | 
                    displays information about JPEG XL images
                   | 
              
                | 
                    libjxl.so | 
                    contains the reference implementation of the JPEG XL
                    standard
                   | 
              
                | 
                    libjxl_cms.so | 
                    contains support for Little CMS in libjxl
                   | 
              
                | 
                    libjxl_extras_codec.so | 
                    contains additional codec support for JPEG XL images
                   | 
              
                | 
                    libjxl_jni.so | 
                    contains a Java interface to support JPEG XL on systems
                    where Java-22.0.2 was installed at build time
                   | 
              
                | 
                    libjxl_threads.so | 
                    contains threading functions for JPEG XL
                   | 
              
                | 
                    libpixbufloader-jxl.so | 
                    contains a loader for gdk-pixbuf to allow it to load JPEG
                    XL images
                   |