diff options
author | Ulf Lamping <ulf.lamping@web.de> | 2004-09-25 08:36:07 +0000 |
---|---|---|
committer | Ulf Lamping <ulf.lamping@web.de> | 2004-09-25 08:36:07 +0000 |
commit | db97602184b2dbd2c84543422f22b9e34e9b033f (patch) | |
tree | ace7e193f99b58f407faa562f3ee0c0ff39b3f88 /docbook/edg_src/EDG_chapter_libraries.xml | |
parent | ffb879cb166b0a8bf907cac82aee0d770b8813a5 (diff) | |
download | wireshark-db97602184b2dbd2c84543422f22b9e34e9b033f.tar.gz |
renamed dirs dg-src and ug-src to match output dirnames
svn path=/trunk/; revision=12097
Diffstat (limited to 'docbook/edg_src/EDG_chapter_libraries.xml')
-rw-r--r-- | docbook/edg_src/EDG_chapter_libraries.xml | 387 |
1 files changed, 387 insertions, 0 deletions
diff --git a/docbook/edg_src/EDG_chapter_libraries.xml b/docbook/edg_src/EDG_chapter_libraries.xml new file mode 100644 index 0000000000..ff056d0461 --- /dev/null +++ b/docbook/edg_src/EDG_chapter_libraries.xml @@ -0,0 +1,387 @@ +<!-- EDG Chapter Libraries --> +<!-- $Id$ --> + +<chapter id="ChapterLibraries"> + <title>Libraries</title> + + <section id="ChLibIntro"> + <title>Introduction</title> + <para> + Several libraries are needed to build / run Ethereal. Most of the + libraries are splitted into three packages: + <orderedlist> + <listitem> + <para> + Runtime package: binaries (e.g. win32 DLL's) and alike + </para> + </listitem> + <listitem> + <para> + Developer package: documentation, header files and alike + </para> + </listitem> + <listitem> + <para> + Source package: library sources, usually not required to + build ethereal + </para> + </listitem> + </orderedlist> + <tip><title>Tip!</title> + <para> + Win32: All required libraries for the MSVC + generation are available at: + <ulink url="http://www.ethereal.com/distribution/win32/development/"/>, + but see <xref linkend="ChLibsSetup"/> for an easier way to install the + libraries. + </para> + </tip> + </para> + </section> + + <section id="ChLibsFormat"> + <title>Binary library formats</title> + <para> + Binary libraries are available in different formats, depending on the C + compiler (see <xref linkend="ChToolsCompiler"/>) used to build it and of + course the platform they were build for. + </para> + + <section id="ChLibsFormatUnix"> + <title>Unix</title> + <para> + If you have installed unix binary libraries on your system, they will + match the C compiler. If not already installed, the libraries should be + available as a package from the platform installer, or you can download + and compile the source and install that binaries then. + </para> + </section> + + <section id="ChLibsFormatWin32MSVC6"> + <title>Win32: MSVC V6</title> + <para> + Recommended for current Win32 Ethereal releases. + Most of the Win32 binary libraries you will find on the web are in this + format. You will recognize MSVC libraries by the .lib/.dll file extension. + </para> + </section> + + <section id="ChLibsFormatWin32MSVC2003"> + <title>Win32: MSVC 2003</title> + <para> + Currently not widely available, but the first libraries in that format can + be seen on the web. These libraries have the same .lib/.dll file + extension, but unfortunately they are not completely compatible as they + are linked with different dependant libraries, see <xref + linkend="ChToolsCompiler"/> for some further explanations. + </para> + </section> + + <section id="ChLibsFormatWin32Cygwin"> + <title>Win32: cygwin gcc</title> + <para> + Cygwin provides most of the required libraries (with file extension .a/.lib) + for Ethereal suitable for cygwin's gcc compiler. + </para> + </section> + </section> + + <section id="ChLibsSetup"> + <title>Win32: Automated library download</title> + <tip><title>Tip!</title> + <para> + It's a really good idea to use the Win32 automated library download to + install the required libraries as it makes this download very easy. + </para> + </tip> + <warning><title>Warning!</title> + <para> + The library zip files on the server and in the setup target will match + only for the latest sources, as old zip files will be moved into the + <filename>old</filename> folder on the server. So you cannot use the + setup target for "old" (this may even include the released) sources! + </para> + </warning> + <para> + You can download/install all required libraries by using the setup target + of the <filename>Makefile.nmake</filename> from the source package. + </para> + <para> + Before you start the download, you must have installed both + the required tools (see <xref linkend="ChapterTools"/>) and also the + Ethereal sources (see <xref linkend="ChSrcObtain"/>). + </para> + <para> + By default the libraries will be downloaded and installed into + <filename>C:\ethereal-win32-libs</filename>. + You can change this to any other location by editing the file + <filename>config.nmake</filename> and changing the line containing + the ETHEREAL_LIBS setting to your favourite place (use an absolute path + here). + </para> + <para> + Then enter at the command line: + </para> + <para> + <prompt>></prompt> <userinput>nmake -f Makefile.nmake setup</userinput> + </para> + <para> + This will first check for all the various tools needed to build Ethereal, + as described already in <xref linkend="ChToolsWin32Verify"/>. + </para> + <para> + Then it will download the zipped libraries into the directory specified by + ETHEREAL_LIBS and install (unzip) all required library files there. + </para> + <para> + If you have problems downloading the library files, see the wget proxy + comment in <xref linkend="ChToolsWget"/>. + </para> + + <section id="ChLibsSetupUpdate"> + <title>Update of a previous download</title> + <para> + As new versions of the libraries become available, maybe with bugfixes or + some new functionality, your libraries get outdated. + </para> + <para> + You could simply remove everything in the ETHEREAL_LIBS dir and call the + setup target again, but that would require to download every file again + (currently about 33MB), which isn't necessary. + </para> + <para> + The following will bring your libraries up to date: + </para> + <itemizedlist> + <listitem> + <para> + Update your Ethereal sources to the latest SVN files (see <xref + linkend="ChSrcObtain"/>), so the zip filenames in the setup target + of Makefile.nmake is in sync with the library zip files on the server. + </para> + </listitem> + <listitem> + <para> + Remove all files previously unzipped from the downloaded files in your + ETHEREAL_LIBS library path (all the subdirs, e.g. + <filename>c:\ethereal_libs\gtk+</filename>), + except for the zip files located at the toplevel, which are the files + downloaded the last time(s). You could do this, be entering at the command line: + </para> + <para> + <prompt>></prompt> <userinput>nmake -f Makefile.nmake clean_setup</userinput> + </para> + </listitem> + <listitem> + <para> + Start the setup target described above. As wget will download only the + missing files, existing zip files in the ETHEREAL_LIBS dir won't be + downloaded again. Outdated zip files shouldn't do any harm. + </para> + </listitem> + </itemizedlist> + </section> + + </section> + + <section id="ChLibsGtk"> + <title>GTK+ / GLib / GDK / Pango / ATK / GNU gettext / GNU libiconv</title> + <para> + The Glib library is used as a basic platform abstraction library, it's + not related to graphical user interface (GUI) things. For a detailed + description about GLib, see <xref linkend="ChCodeGLib"/>. + </para> + <para> + The GTK and it's dependant libraries are used to build Ethereal's GUI. + For a detailed description of the GTK libraries, see <xref + linkend="ChUIGTK"/>. + </para> + <para> + All other libraries are dependant on the two libraries mentioned above, + you will typically not come in touch with these while doing Ethereal + development. + </para> + <para> + As the requirements for the GLib/GTK libraries increased in the past, it + depends on the GLib/GTK versions you have, which additional libraries are + required. The 1.x versions only needed GLib/GDK/GTK+, while the 2.x + versions require all mentioned libs. + </para> + + <section id="ChLibsUnixGTK"> + <title>Unix</title> + <para> + The GLib/GTK+ libraries are available for many unix-like platforms and + cygwin. + </para> + <para> + If these libraries aren't already installed and also not available as a + package for your platform, you can get them at: + <ulink url="http://www.gtk.org"/>. + </para> + </section> + + <section id="ChLibsWin32GTK"> + <title>Win32 MSVC</title> + <para> + You can get the latest version at: + <ulink url="http://www.gimp.org/%7Etml/gimp/win32/downloads.html"/>. + </para> + </section> + </section> + + <section id="ChLibsSNMP"> + <title>Net SNMP (previously known as "ucd-snmp")</title> + <para> + "Various tools relating to the Simple Network Management Protocol" + </para> + + <section id="ChLibsUnixSNMP"> + <title>Unix</title> + <para> + If this library isn't already installed and also not available as a + package for your platform, you can get it at: + <ulink url="http://sourceforge.net/projects/net-snmp/"/>. + </para> + </section> + + <section id="ChLibsWin32SNMP"> + <title>Win32 MSVC</title> + <para> + You can get the latest version at: + <ulink url="http://sourceforge.net/projects/net-snmp/"/>. + </para> + </section> + + </section> + + + <section id="ChLibsADNS"> + <title>GNU ADNS (optional)</title> + <para> + "Advanced, easy to use, asynchronous-capable DNS client library and +utilities." + </para> + + <section id="ChLibsUnixADNS"> + <title>Unix</title> + <para> + If this library isn't already installed and also not available as a + package for your platform, you can get it at: + <ulink url="http://www.gnu.org/software/adns/"/>. + </para> + </section> + + <section id="ChLibsWin32ADNS"> + <title>Win32 MSVC</title> + <para> + You can get the latest version at: + <ulink url="http://adns.jgaa.com/"/> + </para> + </section> + + </section> + + + <section id="ChLibsPCRE"> + <title>PCRE(optional)</title> + <para> + "Perl compatible regular expressions" + </para> + + <section id="ChLibsUnixPCRE"> + <title>Unix</title> + <para> + If this library isn't already installed and also not available as a + package for your platform, you can get it at: + <ulink url="http://www.pcre.org/"/>. + </para> + </section> + + <section id="ChLibsWin32PCRE"> + <title>Win32 MSVC</title> + <para> + You can get the latest version at: + <ulink url="http://gnuwin32.sourceforge.net/packages/pcre.htm"/> + </para> + </section> + + </section> + + + <section id="ChLibsZlib"> + <title>zlib (optional)</title> + <para> + "zlib is designed to be a + <ulink url="http://www.gzip.org/zlib/zlib_license.html">free</ulink>, + general-purpose, legally unencumbered -- that is, not covered by any + patents -- lossless data-compression library for use on virtually any computer + hardware and operating system." + </para> + + <section id="ChLibsUnixZlib"> + <title>Unix</title> + <para> + If this library isn't already installed and also not available as a + package for your platform, you can get it at: + <ulink url="http://www.gzip.org/zlib/"/>. + </para> + </section> + + <section id="ChLibsWin32Zlib"> + <title>Win32 MSVC</title> + <para> + You can get the latest version at: + <ulink url="http://gnuwin32.sourceforge.net/packages/zlib.htm"/> + </para> + <para> + (A version for the MSVC2003 compiler can be found at: + <ulink url="http://www.winimage.com/zLibDll/"/>) + </para> + </section> + + </section> + + + <section id="ChLibsPcap"> + <title>libpcap/WinPcap (optional)</title> + <para> + "packet capture library" + </para> + + <section id="ChLibsLibpcap"> + <title>Unix: libpcap</title> + <para> + If this library isn't already installed and also not available as a + package for your platform, you can get it at: + <ulink url="http://www.tcpdump.org/"/>. + </para> + </section> + + <section id="ChLibsWinpPcap"> + <title>Win32 MSVC: WinPcap</title> + <para> + You can get the "Windows packet capture library" at: + <ulink url="http://winpcap.polito.it/install/default.htm"/> + </para> + </section> + + </section> + + + <section id="ChLibsWimp"> + <title>Win32: GTK WIMP (optional) for GTK 2.x only</title> + <para> + "GTK-Wimp ("Windows impersonator") is a GTK theme that blends well into + the Windows desktop environment." + </para> + <para> + Wimp is only available for the GTK2.x versions at: + <ulink url="http://gtk-wimp.sourceforge.net/"/>. + </para> + + </section> + + +</chapter> +<!-- End of EUG Chapter Libraries --> |