OSDN Git Service

disable asserts in libdvdnav except when configured with --debug=max
[handbrake-jp/handbrake-jp-git.git] / doc / BUILD-Linux
index 3c5182c..ecfc415 100644 (file)
@@ -1,4 +1,4 @@
-Guide to Building HandBrake svn2322 (2009041301) on Linux
+Guide to Building HandBrake svn3023 (2009121001) on Linux
 *********************************************************
 
 Table of Contents
@@ -19,6 +19,7 @@ Table of Contents
     5.4.4 Contrib Touch and Untouch
     5.4.5 Contrib Aggregates
   5.5 Customizing Make
+6 Troubleshooting
 Appendix A Project Repository Details
 
 
@@ -37,13 +38,21 @@ Linux; but is not necessarily the only configuration that is possible:
 
    * Intel 32-bit or 64-bit kernel
 
-   * Ubuntu 8.0.4, gcc 4.3.0, yasm 0.7.1.2093
+   * Ubuntu 8.04, gcc 4.3.0, yasm 0.7.1
 
-   * Ubuntu 8.10, gcc 4.3.2, yasm 0.7.1.2093
+   * Ubuntu 8.10, gcc 4.3.2, yasm 0.7.1
 
-   * Fedora 9, gcc 4.3.0, yasm 0.7.1.2093
+   * Ubuntu 9.04, gcc 4.3.3, yasm 0.7.1
 
-   * Fedora 10, gcc 4.3.2, yasm 0.7.1.2093
+   * Ubuntu 9.10, gcc 4.4.1, yasm 0.8.0
+
+   * Fedora 9, gcc 4.3.0, yasm 0.7.1
+
+   * Fedora 10, gcc 4.3.2, yasm 0.7.1
+
+   * Fedora 11, gcc 4.4.0, yasm 0.7.2
+
+   * Fedora 12, gcc 4.4.2, yasm 0.7.2
 
    * gcc 4.0.0 or higher is reported to work
 
@@ -57,11 +66,11 @@ Linux; but is not necessarily the only configuration that is possible:
 The following general tools are used on various platforms and it is
 recommended you use these versions or similar:
 
-   * subversion - 1.5.5
+   * subversion - 1.6.2
 
    * python - Python 2.4.6
 
-   * curl - curl 7.19.3 (or wget)
+   * curl - curl 7.19.4 (or wget)
 
    * m4 - GNU M4 1.4.6
 
@@ -77,18 +86,22 @@ The GTK UI introduces some significant extra build requirements. If you
 intend to disable building the GUI with `configure --disable-gtk' you
 will not need many of these packages installed:
 
-Ubuntu 8.10 packages:
-   * build-essential
+Ubuntu 8.04 - 9.10 packages:
+   * subversion (cli/gui)
 
-   * autoconf (gui)
+   * yasm (cli/gui)
 
-   * intltool (gui)
+   * build-essential (cli/gui)
 
-   * libtool (gui)
+   * autoconf (cli/gui)
 
-   * zlib1g-dev (gui)
+   * libtool (cli/gui)
 
-   * libbz2-dev
+   * zlib1g-dev (cli/gui)
+
+   * libbz2-dev (cli/gui)
+
+   * intltool (gui)
 
    * libglib2.0-dev (gui)
 
@@ -100,7 +113,7 @@ Ubuntu 8.10 packages:
 
    * libhal-storage-dev (gui)
 
-   * libgtkhtml3.14-dev (gui)
+   * libwebkit-dev (gui)
 
    * libnotify-dev (gui)
 
@@ -108,14 +121,16 @@ Ubuntu 8.10 packages:
 
    * libgstreamer-plugins-base0.10-dev (gui)
 
+Ubuntu 8.04, substitute libwebkitgtk-dev for libwebkit-dev
+
 To install these packages:
      sudo apt-get install subversion yasm build-essential \
-     autoconf intltool libtool zlib1g-dev libbz2-dev libglib2.0-dev \
+     autoconf libtool zlib1g-dev libbz2-dev intltool libglib2.0-dev \
      libdbus-glib-1-dev libgtk2.0-dev libhal-dev libhal-storage-dev \
-     libgtkhtml3.14-dev libnotify-dev libgstreamer0.10-dev \
+     libwebkit-dev libnotify-dev libgstreamer0.10-dev \
      libgstreamer-plugins-base0.10-dev
 
-Fedora 10 package groups:
+Fedora 9 - 12 package groups:
    * Development Tools
 
    * Development Libraries
@@ -128,16 +143,18 @@ To install these package groups:
      sudo yum groupinstall "Development Tools" "Development Libraries" \
      "X Software Development" "GNOME Software Development"
 
-Additional Fedora 10 packages:
-   * zlib-devel (gui)
+Additional Fedora packages:
+   * yasm (cli/gui)
+
+   * zlib-devel (cli/gui)
 
-   * bzip2-devel
+   * bzip2-devel (cli/gui)
 
    * dbus-glib-devel (gui)
 
    * hal-devel (gui)
 
-   * gtkhtml3-devel (gui)
+   * webkitgtk-devel (gui)
 
    * libnotify-devel (gui)
 
@@ -145,9 +162,11 @@ Additional Fedora 10 packages:
 
    * gstreamer-plugins-base-devel (gui)
 
+Fedora 9 & 10, substitute WebKit-gtk-devel for webkitgtk-devel
+
 To install these packages:
      sudo yum install yasm zlib-devel bzip2-devel \
-     dbus-glib-devel hal-devel gtkhtml3-devel libnotify-devel\
+     dbus-glib-devel hal-devel webkitgtk-devel libnotify-devel\
      gstreamer-devel gstreamer-plugins-base-devel
 
 3 QuickStart
@@ -156,7 +175,7 @@ To install these packages:
 This chapter is for building from a terminal/shell environment in as
 few commands as possible. Upon completion of the following commands you
 should have a fresh build of HandBrake. Further instructions are
-available beginning with *Note overview:: which describes procedures
+available beginning with *note overview:: which describes procedures
 suitable for repeating builds. This chapter should be skipped by those
 seeking more than a minimalist build.
 
@@ -372,9 +391,9 @@ scoped targets:
 ---------------------
 
 Contrib modules such as `a52dec', `bzip2', `faac', `faad2', `ffmpeg',
-`lame', `libdca', `libdvdread', `libmkv', `libmp4v2', `libogg',
-`libsamplerate', `libtheora', `libvorbis', `mpeg2dec', `x264',
-`xvidcore' and `zlib' have the following scoped targets:
+`lame', `libdca', `libdvdread', `libmkv', `libogg', `libsamplerate',
+`libtheora', `libvorbis', `mp4v2', `mpeg2dec', `x264' and `zlib' have
+the following scoped targets:
 
 `make MODULE.fetch'
      Download source tarball from the Internet and save to
@@ -495,7 +514,7 @@ be lost. Here is a short example of what the contents of
 `_SRC_/custom.defs' might contain:
 
      ## bump to gcc-4.2 in current path
-     GCC.gcc = gcc-4.2
+     GCC.gcc = /usr/bin/gcc-4.2
 
      ## replace optimize for 'speed' with more aggressive settings
      GCC.args.O.speed = -O3 -fomit-frame-pointer -msse4.2
@@ -503,6 +522,31 @@ be lost. Here is a short example of what the contents of
 See also `make report.help' which displays a set of reports used to
 dump makefile vars.
 
+6 Troubleshooting
+*****************
+
+When troubleshooting build issues, the following files relative to the
+`build/' directory may be especially useful:
+
+`GNUmakefile'
+     Top-level makefile which contains build settings generated via
+     configure.
+
+`log/config.info.txt'
+     Record of output from configure.
+
+`log/config.verbose.txt'
+     Record of verbose output from configure.
+
+`log/build.txt'
+     Record of output from `configure --launch'. Similar output may be
+     recorded using `make' depending on which shell is in use, eg:
+     `make >& log/build.txt' or `make > log/build.txt 2>&1'.
+
+`log/xcodemake.env.txt'
+     Environment (variables) dump as seen when Xcode forks `make'.
+     Mac OS X only.
+
 Appendix A Project Repository Details
 *************************************
 
@@ -510,7 +554,7 @@ Appendix A Project Repository Details
      root:   svn://svn.handbrake.fr/HandBrake
      branch: trunk
      uuid:   b64f7644-9d1e-0410-96f1-a4d463321fa5
-     rev:    2322
-     date:   2009-04-13 13:28:21 -0400
+     rev:    3023
+     date:   2009-12-10 09:44:05 -0800
      type:   developer