Recent Changes - Search:

libjpeg-turbo Home

About libjpeg-turbo

Downloads

Documentation

Reports

Position Statements

Developer Info

Contact

Official Binaries

With each release, the libjpeg-turbo Project provides "official" binary packages to support the most popular development platforms. In all cases, the official binaries are built in a manner that is as performant and compatible as possible. For instance, if there is a known performance issue with a newer compiler, we will continue to build our binaries using the older compiler. Even though libjpeg-turbo is an open source project and we encourage anyone who wants to "get their feet wet" to try building it from source, our goal is that this should not be necessary for most users, particularly casual users who just want to try out the software.

Platform Support

RPM-based and Debian-based Linux distributions (x86 and x86-64)

  • libjpeg-turbo 1.3.x and earlier should work with distributions that provide glibc 2.3.2 or later (including Fedora 2 or later, Red Hat Enterprise Linux/CentOS 3 or later, SuSE Linux Enterprise 9 or later, and Ubuntu 6.06 or later.)
  • libjpeg-turbo 1.4 beta - 1.4.1 should work with distributions that provide glibc 2.3.4 or later (including Fedora 4 or later, Red Hat Enterprise Linux/CentOS 4 or later, SuSE Linux Enterprise/openSUSE 10 or later, and Ubuntu 6.06 or later.)
  • libjpeg-turbo 1.4.2 and later should work with distributions that provide glibc 2.5 or later (including Fedora 6 or later, Red Hat Enterprise Linux/CentOS 5 or later, SuSE Linux Enterprise/openSUSE 11 or later, and Ubuntu 8.04 or later.)
  • A source RPM (SRPM) is provided, which should allow for easily rebuilding the software on RPM-based platforms that our binary RPMs do not support.

OS X (32-bit and 64-bit Intel)

  • libjpeg-turbo 1.3.x and earlier support OS X 10.4 "Tiger" and later.
  • libjpeg-turbo 1.4.x and later support OS X 10.5 "Leopard" and later.

iOS (32-bit and 64-bit ARM)

  • The static libraries (libjpeg.a and libturbojpeg.a) in the official OS X binary packages for libjpeg-turbo 1.2.0 and later are fat binaries that provide support for the following iOS platforms:
    • libjpeg-turbo 1.2.0 - 1.5.0:
      • iOS 4.3 and later / ARMv6 (iPhone 3G) [No SIMD acceleration]
      • iOS 4.3 and later / ARMv7 (iPhone 3GS-4S, iPad 1st-3rd generation, iPad Mini)
    • libjpeg-turbo 1.3 beta and later:
      • iOS 6.0 and later / ARMv7s (iPhone 5 & 5C, iPad 4th generation)
    • libjpeg-turbo 1.4.0 - 1.5.0:
      • iOS 7.0 and later / ARMv8 (iPhone 5S and later, iPad Mini 2 and later, iPad Air)
    • libjpeg-turbo 1.5.1 and later:
      • iOS 6.0 and later / ARMv7 w/ bitcode (iPhone 3GS-4S, iPad 1st-3rd generation, iPad Mini)
      • iOS 6.0 and later / ARMv7s w/ bitcode (iPhone 5 & 5C, iPad 4th generation)
      • iOS 7.0 and later / ARMv8 w/ bitcode (iPhone 5S and later, iPad Mini 2 and later, iPad Air)
  • In libjpeg-turbo 1.4.0 and later, iOS/ARM support is also included in the dynamic libraries.
  • Refer to this article for information about which algorithms have ARMv7 and ARMv8 SIMD implementations.

Microsoft Windows XP and later (x86 and x64)

  • Technically, our binaries probably work with earlier versions of Windows as well, although this has not been tested.
  • MinGW, MinGW-w64, and Visual C++ (2008 and later, both 32-bit and 64-bit flavors) are supported.
  • libjpeg-turbo 1.3.x and earlier
    • If your application uses the libjpeg API (as opposed to the TurboJPEG API) and you plan to dynamically link with jpeg62.dll (the libjpeg API DLL in the official libjpeg-turbo packages for Visual C++), then you will need to install the Visual C++ 2008 run-time DLL (msvcr90.dll). This DLL ships with Windows Vista and later, but Windows XP users can obtain it by installing the Visual C++ 2008 Redistributable Package (x86, x64.)
    • Features of the libjpeg API that require passing a C run-time structure, such as a file handle, from an application to the library will probably not work with jpeg62.dll, unless the application is also built to use the Visual C++ 2008 C run-time DLL. In particular, this affects jpeg_stdio_dest() and jpeg_stdio_src().
  • libjpeg-turbo 1.4.x and later
    • If your application uses the libjpeg API (as opposed to the TurboJPEG API) and you plan to dynamically link with jpeg62.dll (the libjpeg API DLL in the official libjpeg-turbo packages for Visual C++), then you will need to install the Visual C++ 2010 run-time DLL (msvcr100.dll). This can be accomplished by installing the Visual C++ 2010 Redistributable Package (x86, x64.)
    • Features of the libjpeg API that require passing a C run-time structure, such as a file handle, from an application to the library will probably not work with jpeg62.dll, unless the application is also built to use the Visual C++ 2010 C run-time DLL. In particular, this affects jpeg_stdio_dest() and jpeg_stdio_src().

Included Features

  • libjpeg v6b API/ABI
    • If you need to emulate the libjpeg v7 or v8 API/ABI, it will be necessary to build libjpeg-turbo from source.
  • libjpeg-turbo 1.3 beta and later add support for the in-memory source/destination managers (jpeg_mem_src() and jpeg_mem_dest()), which were previously only available when emulating the libjpeg v8 API/ABI.
  • Arithmetic coding support
  • Java support (libjpeg-turbo 1.2 beta and later)
  • On Linux and OS X, our static libraries are built with PIC, so they can be linked into shared libraries.
  • On Linux and Cygwin, our binaries use a package name of "libjpeg-turbo-official" instead of "libjpeg-turbo", so as to avoid conflict with any system-supplied version of libjpeg-turbo.

Installation Directories

Linux, Cygwin

  • SDK, Shared Libraries, and Programs: /opt/libjpeg-turbo
  • Documentation: /usr/share/doc/libjpeg-turbo-{version}

OS X

  • SDK, Shared Libraries, and Programs: /opt/libjpeg-turbo
  • Documentation: /Library/Documentation/libjpeg-turbo

Windows

  • SDK and Shared Libraries for MinGW, Programs, and Documentation: c:\libjpeg-turbo-gcc[64]
  • SDK and Shared Libraries for Visual C++, Programs, and Documentation: c:\libjpeg-turbo[64]
  • turbojpeg.dll and libturbojpeg.dll are installed both in c:\libjpeg-turbo[-gcc][64]\bin and in the Windows system directory. This is to facilitate the use of the TurboJPEG DLL by Java applications.

How to Reproduce the Official Binaries

Creative Commons LicenseAll content on this web site is licensed under the Creative Commons Attribution 2.5 License. Any works containing material derived from this web site must cite The libjpeg-turbo Project as the source of the material and list the current URL for the libjpeg-turbo web site.

Edit - History - Print - Recent Changes - Search
Page last modified on August 18, 2017, at 04:33 PM