Installation of the dvdisaster source code distribution ======================================================= [don't edit - generated from documentation/install.template] Contents 1. Required tools and libraries 1.1 C compiler, make and other build tools 1.2 Gtk+ and localozation support 2. Operating system specific issues 2.1 FreeBSD 2.1.1 Required packages 2.2 NetBSD 2.2.1 Required packages 3. Compiling the source code 3.1 Unpacking the source code archive 3.2 Configuring the package 3.3 Compiling the package 4. Installation 4.1 Installation of the program 4.2 Removing an installation 5 Running the program 5.1 Program documentation 5.2 FreeBSD hints 5.3 NetBSD hints ======================================================= 1. Required tools and libraries =============================== 1.1 C compiler, make and other build tools ------------------------------------------ dvdisaster requires the usual GNU development tools for compiling C programs. You must have gcc, GNU make, the bash shell and the GNU fileutils and textutils packages installed. Using other compilers and tools is currently not tested, recommended or supported in any way. Patches for them will not be accepted. FreeBSD, Linux and NetBSD typically come with suitable packages on their installation media. Sometimes these packages are not installed completely by default; you may need to install their development versions also. The additional packages are usually suffixed with "-devel" or "-dev". See Section 3.2 for information on configuring the build process, and for specifying the compiler. 1.2 Gtk+ and localization support --------------------------------- Depending on your operating system you will also need: - The gettext library http://www.gnu.org/software/gettext/ - The pkgconfig tool http://www.freedesktop.org/software/pkgconfig/releases - The GTK+ library version 2.2 or better, http://www.gtk.org including all auxiliary libraries. Again, the supported Unices should have suitable packages on their distribution media. 2. Operating system specific issues =================================== 2.1 FreeBSD ----------- 2.1.1 Required packages For your convenience, building dvdisaster required the following packages under FreeBSD 10.1: # pkg install bash # pkg install gmake # pkg install gettext # pkg install gcc # pkg install pkgconf # pkg install gtk2 2.2 NetBSD ---------- 2.2.1 Required packages For your convenience, building dvdisaster required the following packages under NetBSD 9.0: # pkg_add bash # pkg_add gmake # pkg_add pkg-config # pkg_add gtk2+ 3. Compiling the source code ============================ It is recommended to compile the source code as a normal user, not root. In the following instructions, user@host> denotes the shell prompt. 3.1 Unpacking the source code archive ------------------------------------- Please change into a directory which is writeable for you and unpack the source code archive: user@host> cd /var/tmp user@host> tar xjf @@PKGNAME.tar.bz2 Then change into the newly created directory: user@host> cd /var/tmp/@@PKGNAME 3.2. Configuring the package ---------------------------- Please note that the dvdisaster configure script is not generated by GNU autoconf, but should behave in a similar way. Call the configuration script in the usual way: user@host> ./configure The script will possibly print some errors about missing libraries. Type "configure --help" to learn about pointing configure to the correct path of already installed libraries. The "--help" option will also give information about some options which are useful if you plan to install the package to a certain location. Please note that the --buildroot=DIR option is mainly useful for package maintainers, but will mess up things when trying a direct install via "make install". If your gcc compiler resides in an unusual place, specify it by setting the CC environment variable for the ./configure script. Example (may be helpful for FreeBSD): CC=/usr/local/bin/gcc48 ./configure Please note that changing CC at a later time, e.g. when doing the make step, has no effect. After ./configure has been run, do a "make show" to review the settings obtained by the configuration. 3.3 Compiling the package ------------------------- When the configuration script finishes without error messages, compile the source code into the executable program: user@host> gmake On some systems, GNU make must be invoked as "make". Invoke the program for a quick test: user@linux> ./dvdisaster After a short moment the main window should open an the program is ready for use. Working with the program from the current directory (e.g. without installation) is okay. 4. Installation =============== 4.1 Installation of the program ------------------------------- To install the program and documentation permanently on your system, become root and do: root@host# gmake install Before doing the install, please review the output of the "configure" script or type "gmake show" to learn about the target directories of the installation. Enter "bash configure --help" to get information on changing the installation paths. 4.2. Removing an installation ----------------------------- During the installation process a shell script is created which can be used to remove dvdisaster from your system: root@host# dvdisaster-uninstall.sh In order to remove the source code distribution, please remove the directory you have created as described in section 3.1: user@host> cd /var/tmp user@host> rm -rf @@PKGNAME 5. Running the program ====================== 5.1 Program documentation ------------------------- The online documentation is located in the sub directory documentation/manual.pdf You can also press the respective toolbar button in dvdisaster to view the online docs. 5.2 FreeBSD hints ----------------- Running as an unpriviledged user If you want to run dvdisaster as an unpriviledged user (which is recommended), make sure that the respective user is member of the "operator" group and that he has read _and_ write permission on the optical drive, e.g. /dev/pass1. Use camcontrol to find out which passthrough device is assigned to your drive: root@freebsd# camcontrol devlist at scbus1 target 0 lun 0 (pass0,cd0) Avoid copy-on-write filesystems dvdisaster assumes that ISO images are laid out sequentially on the hard disk, and that it can rewrite sectors in place. Therefore avoid processing images on ZFS volumes, as reading and recovering defective images may lead to serious fragmentation and performance hits. 5.3 NetBSD hints ---------------- Running as an unpriviledged user If you want to run dvdisaster as an unpriviledged user (which is recommended), make sure that the respective user is member of the "operator" group and that he has read _and_ write permission on the optical drive, e.g. /dev/rcd0d. Enjoy using dvdisaster!