• Home
  • Raw
  • Download

Lines Matching +full:1 +full:- +full:installer +full:- +full:linux +full:- +full:x86_64

1 Building libjpeg-turbo
6 ------------------
11 - [CMake](http://www.cmake.org) v2.8.12 or later
13 - [NASM](http://www.nasm.us) or [YASM](http://yasm.tortall.net)
14 (if building x86 or x86-64 SIMD extensions)
16 * If using NASM, 2.10 or later (except 2.11.08) is required for an x86-64 Mac
17 build (2.11.08 does not work properly with libjpeg-turbo's x86-64 SIMD code
21 - NOTE: Currently, if it is desirable to hide the SIMD function symbols in
23 libjpeg-turbo, then YASM must be used when building libjpeg-turbo.
26 The binary RPMs released by the NASM project do not work on older Linux
27 systems, such as Red Hat Enterprise Linux 5. On such systems, you can easily
34 ARCH=`uname -m`
35 rpmbuild --rebuild nasm-{version}.src.rpm
36 rpm -Uvh /usr/src/redhat/RPMS/$ARCH/nasm-{version}.$ARCH.rpm
41 ### Un*x Platforms (including Linux, Mac, FreeBSD, Solaris, and Cygwin)
43 - GCC v4.1 (or later) or Clang recommended for best performance
45 - If building the TurboJPEG Java wrapper, JDK or OpenJDK 1.5 or later is
46 required. Most modern Linux distributions, as well as Solaris 10 and later,
57 - Microsoft Visual C++ 2005 or later
61 [Windows SDK](http://msdn.microsoft.com/en-us/windows/bb980924.aspx).
62 The Windows SDK includes both 32-bit and 64-bit Visual C++ compilers and
63 everything necessary to build libjpeg-turbo.
67 build 32-bit code.)
68 * If you intend to build libjpeg-turbo from the command line, then add the
74 SDK. You can pass optional arguments to `SetEnv.cmd` to specify a 32-bit
75 or 64-bit build environment.
79 - MinGW
81 [MSYS2](http://msys2.github.io/) or [tdm-gcc](http://tdm-gcc.tdragon.net/)
86 - If building the TurboJPEG Java wrapper, JDK 1.5 or later is required. This
93 Out-of-Tree Builds
94 ------------------
98 necessarily be the same as the libjpeg-turbo source directory. You can create
100 libjpeg-turbo can be built from the same source tree using different compilers
102 directory, whereas *{source_directory}* refers to the libjpeg-turbo source
103 directory. For in-tree builds, these directories are the same.
107 ---------------
116 The following procedure will build libjpeg-turbo on Unix and Unix-like systems.
117 (On Solaris, this generates a 32-bit build. See "Build Recipes" below for
118 64-bit build instructions.)
121 cmake -G"Unix Makefiles" [additional CMake flags] {source_directory}
129 **libjpeg.so.{version}** (Linux, Unix)<br>
131 **cygjpeg-{version}.dll** (Cygwin)<br>
138 **libjpeg.so** (Linux, Unix)<br>
148 **libturbojpeg.so.0.2.0** (Linux, Unix)<br>
150 **cygturbojpeg-0.dll** (Cygwin)<br>
153 **libturbojpeg.so** (Linux, Unix)<br>
164 cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release [additional CMake flags] {source_directory}
167 This will build either a 32-bit or a 64-bit version of libjpeg-turbo, depending
172 **jpeg-static.lib**<br>
181 **turbojpeg-static.lib**<br>
201 cmake -G"Visual Studio 10" [additional CMake flags] {source_directory}
204 to build a 64-bit version of libjpeg-turbo. A separate build directory must be
205 used for 32-bit and 64-bit builds.
209 build of libjpeg-turbo.
213 **{configuration}/jpeg-static.lib**<br>
222 **{configuration}/turbojpeg-static.lib**<br>
239 environment. If you are cross-compiling on a Un*x platform (including Mac and
243 cmake -G"MSYS Makefiles" [additional CMake flags] {source_directory}
251 **libjpeg-{version}.dll**<br>
272 Add `-DCMAKE_BUILD_TYPE=Debug` to the CMake command line. Or, if building
273 with NMake, remove `-DCMAKE_BUILD_TYPE=Release` (Debug builds are the default
279 Add `-DWITH_JPEG7=1` to the CMake command line to build a version of
280 libjpeg-turbo that is API/ABI-compatible with libjpeg v7. Add `-DWITH_JPEG8=1`
281 to the CMake command line to build a version of libjpeg-turbo that is
282 API/ABI-compatible with libjpeg v8. See [README.md](README.md) for more
286 ### In-Memory Source/Destination Managers
288 When using libjpeg v6b or v7 API/ABI emulation, add `-DWITH_MEM_SRCDST=0` to
289 the CMake command line to build a version of libjpeg-turbo that lacks the
298 included in this release of libjpeg-turbo. libjpeg-turbo's implementation is
302 add `-DWITH_ARITH_ENC=0` or `-DWITH_ARITH_DEC=0` to the CMake command line to
308 Add `-DWITH_JAVA=1` to the CMake command line to incorporate an optional Java
310 Java front-end classes to support it. This allows the TurboJPEG shared library
315 build/test libjpeg-turbo, then (prior to running CMake) set the `JAVA_HOME`
328 -------------
331 ### 32-bit Build on 64-bit Linux/Unix/Mac
336 CFLAGS=-m32
337 LDFLAGS=-m32
340 ### 64-bit Build on Solaris
345 CFLAGS=-m64
346 LDFLAGS=-m64
355 ### 32-bit MinGW Build on Un*x (including Mac and Cygwin)
362 set(CMAKE_C_COMPILER {mingw_binary_path}/i686-w64-mingw32-gcc)
363 set(CMAKE_RC_COMPILER {mingw_binary_path}/i686-w64-mingw32-windres)
369 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
374 ### 64-bit MinGW Build on Un*x (including Mac and Cygwin)
381 set(CMAKE_C_COMPILER {mingw_binary_path}/x86_64-w64-mingw32-gcc)
382 set(CMAKE_RC_COMPILER {mingw_binary_path}/x86_64-w64-mingw32-windres)
388 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
393 Building libjpeg-turbo for iOS
394 ------------------------------
398 advantage of libjpeg-turbo's SIMD extensions to significantly accelerate JPEG
399 compression/decompression. This section describes how to build libjpeg-turbo
405 - For configurations that require [gas-preprocessor.pl]
406 (https://raw.githubusercontent.com/libjpeg-turbo/gas-preprocessor/master/gas-preprocessor.pl),
410 ### ARMv7 (32-bit)
412 **gas-preprocessor.pl required**
414 The following scripts demonstrate how to build libjpeg-turbo to run on the
415 iPhone 3GS-4S/iPad 1st-3rd Generation and newer:
417 #### Xcode 4.2 and earlier (LLVM-GCC)
421 …export CFLAGS="-mfloat-abi=softfp -march=armv7 -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -miphon…
428 set(CMAKE_C_COMPILER ${IOS_PLATFORMDIR}/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2)
431 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
432 -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} \
436 #### Xcode 4.3-4.6 (LLVM-GCC)
446 export CFLAGS="-mfloat-abi=softfp -arch armv7 -miphoneos-version-min=3.0"
447 export ASMFLAGS="-no-integrated-as"
457 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
458 -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} \
463 ### ARMv7s (32-bit)
465 **gas-preprocessor.pl required**
467 The following scripts demonstrate how to build libjpeg-turbo to run on the
470 #### Xcode 4.5-4.6 (LLVM-GCC)
474 …export CFLAGS="-Wall -mfloat-abi=softfp -march=armv7s -mcpu=swift -mtune=swift -mfpu=neon -miphone…
481 set(CMAKE_C_COMPILER ${IOS_PLATFORMDIR}/Developer/usr/bin/arm-apple-darwin10-llvm-gcc-4.2)
484 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
485 -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} \
494 export CFLAGS="-Wall -mfloat-abi=softfp -arch armv7s -miphoneos-version-min=6.0"
497 ### ARMv8 (64-bit)
499 **gas-preprocessor.pl required if using Xcode < 6**
501 The following script demonstrates how to build libjpeg-turbo to run on the
506 export CFLAGS="-Wall -arch arm64 -miphoneos-version-min=7.0 -funwind-tables"
516 cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake \
517 -DCMAKE_OSX_SYSROOT=${IOS_SYSROOT[0]} \
525 Building libjpeg-turbo for Android
526 ----------------------------------
528 Building libjpeg-turbo for Android platforms requires v13b or later of the
532 ### ARMv7 (32-bit)
538 NDK_PATH={full path to the NDK directory-- for example,
539 /opt/android/android-ndk-r16b}
540 TOOLCHAIN={"gcc" or "clang"-- "gcc" must be used with NDK r16b and earlier,
542 ANDROID_VERSION={the minimum version of Android to support-- for example,
546 cmake -G"Unix Makefiles" \
547 -DANDROID_ABI=armeabi-v7a \
548 -DANDROID_ARM_MODE=arm \
549 -DANDROID_PLATFORM=android-${ANDROID_VERSION} \
550 -DANDROID_TOOLCHAIN=${TOOLCHAIN} \
551 -DCMAKE_ASM_FLAGS="--target=arm-linux-androideabi${ANDROID_VERSION}" \
552 -DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
557 ### ARMv8 (64-bit)
563 NDK_PATH={full path to the NDK directory-- for example,
564 /opt/android/android-ndk-r16b}
565 TOOLCHAIN={"gcc" or "clang"-- "gcc" must be used with NDK r14b and earlier,
568 is required for a 64-bit build.}
571 cmake -G"Unix Makefiles" \
572 -DANDROID_ABI=arm64-v8a \
573 -DANDROID_ARM_MODE=arm \
574 -DANDROID_PLATFORM=android-${ANDROID_VERSION} \
575 -DANDROID_TOOLCHAIN=${TOOLCHAIN} \
576 -DCMAKE_ASM_FLAGS="--target=aarch64-linux-android${ANDROID_VERSION}" \
577 -DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
582 ### x86 (32-bit)
588 NDK_PATH={full path to the NDK directory-- for example,
589 /opt/android/android-ndk-r16b}
590 TOOLCHAIN={"gcc" or "clang"-- "gcc" must be used with NDK r14b and earlier,
592 ANDROID_VERSION={The minimum version of Android to support-- for example,
596 cmake -G"Unix Makefiles" \
597 -DANDROID_ABI=x86 \
598 -DANDROID_PLATFORM=android-${ANDROID_VERSION} \
599 -DANDROID_TOOLCHAIN=${TOOLCHAIN} \
600 -DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
605 ### x86-64 (64-bit)
611 NDK_PATH={full path to the NDK directory-- for example,
612 /opt/android/android-ndk-r16b}
613 TOOLCHAIN={"gcc" or "clang"-- "gcc" must be used with NDK r14b and earlier,
616 is required for a 64-bit build.}
619 cmake -G"Unix Makefiles" \
620 -DANDROID_ABI=x86_64 \
621 -DANDROID_PLATFORM=android-${ANDROID_VERSION} \
622 -DANDROID_TOOLCHAIN=${TOOLCHAIN} \
623 -DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
629 ----------------------
638 cmake-gui {source_directory}
641 text-based interactive version of CMake, and CMake-GUI is a GUI version. Both
642 will display all variables that are relevant to the libjpeg-turbo build, their
646 Installing libjpeg-turbo
649 You can use the build system to install libjpeg-turbo (as opposed to creating
650 an installer package.) To do this, run `make install` or `nmake install`
653 the Visual Studio IDE) will uninstall libjpeg-turbo.
656 libjpeg-turbo into a directory of your choosing. If you don't specify
659 **c:\libjpeg-turbo**<br>
660 Visual Studio 32-bit build
662 **c:\libjpeg-turbo64**<br>
663 Visual Studio 64-bit build
665 **c:\libjpeg-turbo-gcc**<br>
666 MinGW 32-bit build
668 **c:\libjpeg-turbo-gcc64**<br>
669 MinGW 64-bit build
671 **/opt/libjpeg-turbo**<br>
674 The default value of `CMAKE_INSTALL_PREFIX` causes the libjpeg-turbo files to
676 libjpeg-turbo binary packages. Changing the value of `CMAKE_INSTALL_PREFIX`
677 (for instance, to **/usr/local**) causes the libjpeg-turbo files to be
683 finer degree of control over where specific files in the libjpeg-turbo
697 cmake -G"{generator type}" -DCMAKE_INSTALL_LIBDIR:PATH=lib {source_directory}
710 Linux section in Creating Distribution Packages
711 -----
715 Create Red Hat-style binary RPM package. Requires RPM v4 or later.
720 Red Hat-style source RPM package from the tarball. Requires RPM v4 or later.
724 Create Debian-style binary package. Requires dpkg.
728 ---
740 This creates a Mac package/disk image that contains universal x86-64/i386/ARM
745 * `OSX_32BIT_BUILD`: Directory containing an i386 (32-bit) Mac build of
746 libjpeg-turbo (default: *{source_directory}*/osxx86)
747 * `IOS_ARMV7_BUILD`: Directory containing an ARMv7 (32-bit) iOS build of
748 libjpeg-turbo (default: *{source_directory}*/iosarmv7)
749 * `IOS_ARMV7S_BUILD`: Directory containing an ARMv7s (32-bit) iOS build of
750 libjpeg-turbo (default: *{source_directory}*/iosarmv7s)
751 * `IOS_ARMV8_BUILD`: Directory containing an ARMv8 (64-bit) iOS build of
752 libjpeg-turbo (default: *{source_directory}*/iosarmv8)
755 sub-builds of libjpeg-turbo (see "Build Recipes" and "Building libjpeg-turbo
758 libjpeg-turbo as an out-of-tree build, and build it. Once the primary build
760 will build the sub-builds, use lipo to combine them into a single set of
766 ------
774 -------
779 nmake installer
784 make installer
786 If using the Visual Studio IDE, build the "installer" target.
788 The installer package (libjpeg-turbo-*{version}*[-gcc|-vc][64].exe) will be
790 then the installer package will be located in a subdirectory with the same name
794 Building a Windows installer requires the
802 The most common way to test libjpeg-turbo is by invoking `make test` (Un*x) or
806 libjpeg-turbo and libjpeg v6b. This also invokes the TurboJPEG unit tests,