官术网_书友最值得收藏!

Downloading Source Code

Today, most of the UNIX and Linux distributions install CUPS by default. CUPS requires ANSI-compliant C and C++ compilers, a Make program and Bourne shell. The GNU compiler tools also work well with CUPS.

CUPS has been tested with GNU Make as well as the other Make programs shipped by Compaq, HP, SGI, and Sun. BSD users should use GNU make (gmake). The latest version of CUPS can be downloaded from http://www.cups.org/software.php. The current stable version of CUPS is 1.3.8.

Apart from these tools, we also require support for the following libraries that provides additional functionality for printing service. CUPS mainly supports two libraries:

  • CUPS imaging library
  • CUPS library

The CUPS imaging library consists of libraries for JPEG, PNG, TIFF, ZLIB, and so on, and it is used for images support.

The CUPS library contains CUPS-specific functions that support the use of CDSA, GNU TLS, and the OpenSSL libraries for encryption. We will discuss these in details in Chapter 10, on Security. For the directory service, you can use the OpenLDAP and the OpenSLP libraries.

You can find a mirror of CUPS related libraries which is maintained by Easy Software Products at:

ftp://ftp.easysw.com/pub/libraries.

Note

CUPS can easily compile and run without above libraries. However, you will miss out on many of the features provided by CUPS.

If any changes need to be made in the man pages, you will need GNU Troff (Groff) or another nroff-like package. Groff is available at ftp://ftp.gnu.org/gnu/groff/.

The documentation is formatted using the HTMLDOC software. If you need to make changes, you can get the HTMLDOC software from http://www.htmldoc.org/index.php.

Compiling CUPS

The source code of CUPS is available in two formats:

  • Gnu zip— with .gz extension
  • bzip2— with .bz2 extension

Once you download the source code for the CUPS, it must be extracted using the following command:

#tar -xvf cups-1.3.8-source.tar.gz 

Or

#tar xvjf cups-1.3.8-source.tar.bz2 

In the example above, cups-1.3.8-source.tar.gz is the source code of CUPS in a .gz format. To compile the source code, we need to go to the CUPS source directory which has just been created.

#cd cups-1.3.8 

CUPS uses GNU Autoconf to configure the Makefiles and source code for your system. Type the following command to configure CUPS for your system:

#./configure 

The default installation will put the CUPS software in the /etc, /usr, and /var directories on your system, which will overwrite all existing print commands on your system.

You can also use the --prefix option to install the CUPS software in another location:

#./configure --prefix=/some/directory 

You can see a complete list of configuration options using the --help option:

#./configure -help 

If the PNG, JPEG, TIFF, and ZLIB libraries are not installed in a system in the default location (typically /usr/include and /usr/lib), we need to set the CFLAGS,CPPFLAGS, CXXFLAGS, DSOFLAGS and LDFLAGS environment variables prior to configuration:

setenv CFLAGS "-I/any/dir" setenv CPPFLAGS "-I/any/dir" setenv CXXFLAGS "-I/any/dir" setenv DSOFLAGS "-Lany/dir" setenv LDFLAGS "-L/any/dir" ./configure 

Or

CFLAGS="-I/any/dir" \ CPPFLAGS="-I/any/dir" \ CXXFLAGS="-I/any/dir" \ DSOFLAGS="-L/any/dir" \ LDFLAGS="-L/any/dir" \ ./configure 

To enable support for encryption, you will need to add the --enable-ssl option:

#./configure --enable-ssl 

SSL and TLS support requires the OpenSSL library, which is available at http://www.openssl.org.

If the OpenSSL headers and libraries are not installed in the standard directories, you can configure them using --with-openssl-includes and --with-openssl-libs options:

#./configure --enable-ssl \ --with-openssl-includes=/foo/bar/include \ --with-openssl-libs=/foo/bar/lib 

Once the configuration is done, you can start building the software by using the following command:

#make 

If you are using FreeBSD, NetBSD, or OpenBSD systems, use the following command instead:

#gmake 
主站蜘蛛池模板: 无锡市| 武鸣县| 称多县| 威远县| 丹江口市| 宁化县| 芦溪县| 平昌县| 霍城县| 扶绥县| 龙南县| 镇康县| 盐亭县| 温泉县| 积石山| 潼南县| 雷州市| 宾阳县| 富宁县| 拜泉县| 德安县| 兴国县| 夏邑县| 屏边| 乌鲁木齐市| 白水县| 彭山县| 小金县| 航空| 岳西县| 甘泉县| 龙里县| 洛阳市| 太康县| 甘肃省| 泗水县| 海晏县| 遵化市| 佛学| 库尔勒市| 平罗县|