This is a port of libjpeg 6b to MSDOS/DJGPP. 1.: DJGPP specific changes. ======================= This port of libjpeg 6b supplies, apart from all features known from the jpeg6b port, lossless compression/decompression and lossless crop for JPEG. The patches to implement these two functionalities have been downloaded from: and: and applied to the standard jpeg-6b sources available at: That are the same sorces that have been used to create the new version of the port jpeg6b[bs].zip. Apart from providing lossless compression/decompression and crop, the goal of this port is to use the standard configure scripts distributed with the package to configure and compile the sources and not relay anymore on the special makefile and config.h files for djgpp (usualy not well maintained) distributed with the package. There are only minor changes to the sources. This concerns certain missing function declarations in a header file. Apart from this, only the usual configuration files have been added, especialy sed scripts to fix the libtool files (ltmain and ltconfig). They are located in the /djgpp subdir. The diffs documemts the changes required to the header and Makefile.in to get a working Makefile and the file: ljpeg6b.patch is the applied patch. As for all binaries and libraries that handle images of any kind, it should be noticed that files (streams) are **always** openend in binary mode with all the well known implications on a DOS/WINDOWS OS if the stream is connected to STDIN and/or STDOUT when these are still connected to the console. To use and compile from sources this library you will have to install the zlib and png library. Please note that you can ***NOT*** have installed both ports, jpeg6b and ljpeg6b, at the same time. This is because all headers and libs have the same name, so they will overwrite each other. I have no intention to resolve this name conflict. Please **read** the docs. 2.: Installing the binary package. ============================== 2.1.: Copy the binary distribution into the top DJGPP installation directory, just unzip it preserving the directory structure running *ONE* of the following commands: unzip32 ljpeg6bb.zip or djtarx ljpeg6bb.zip or pkunzip -d ljpeg6bb.zip 3.: Building the binaries from sources. =================================== 3.1.: Create a temporary directory and copy the source package into the directory. If you download the source distribution from one of the DJGPP sites, just unzip it preserving the directory structure running *ONE* of the following commands: unzip32 ljpeg6bs.zip or djtarx ljpeg6bs.zip or pkunzip -d ljpeg6bs.zip 3.2.: To build the binaries you will need the following binary packages: djdev203.zip (or a later but NOT a prior version) bsh205b.zip (or a later but NOT a prior version) gccNNNb.zip, gppNNN.zip, bnuNNNb.zip, makNNNb.zip, filNNNb.zip, shlNNNb.zip, txtNNNb.zip, txiNNNb.zip, grepNNNb.zip, sedNNNb.zip, pngNNNb.zip and zlibNNNb.zip If you want to run the check you will need also: difNNNb.zip NNN represents the latest version number of the binary packages. All these packages can be found in the /v2gnu directory of any ftp.delorie.com mirror. You will need bsh204b.zip or later and *NOT* a prior version or the build will fail. The same applies to djdev203.zip. 3.3.: If for some reason you want to reconfigure the package cd into the top srcdir (libjpeg.6b) and run the following commands: del djgpp\config.cache make distclean djgpp\config Please note that you *MUST* delete the config.cache file in the djgpp subdir or you will not really reconfigure the sources because the configuration informations will be read from the cache file instead of being newly computed. To build the programs in a directory other than where the sources are, you must add the parameter that specifies the source directory, e.g: x:\src\contrib\libjpeg.6b\djgpp\config x:/src/contrib/libjpeg.6b Lets assume you want to build the binaries in a directory placed on a different drive (z:\build in this case) from where the sources are, then you will run the following commands: z: md \build cd \build x:\src\contrib\libjpeg.6b\djgpp\config x:/src/contrib/libjpeg.6b The order of the options and the srcdir option does not matter. You *MUST* use forward slashes to specify the source directory. The batch file will set same environment variables, make MSDOS specific modifications to the Makefile.in's and supply all other needed options to the configure script. 3.4.: To compile the package run from the top srcdir the command: make 3.5.: Now you can run the tests if you like. From the top srcdir run the command: make check No test should fail. 3.6.: To install the binaries, header, library, catalogs, and info docs run the following command from the top srcdir: make install This will install the products into your DJGPP installation tree given by the default prefix "/dev/env/DJDIR". If you prefer to install them into some other directory you will have to set prefix to the appropiate value: make install prefix=z:/some/other/place Send libjpeg specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . Enjoy. Guerrero, Juan Manuel