strengthened install and uninstall against path names with blanks; small updates in various files and documentation
285 lines
7.8 KiB
Plaintext
285 lines
7.8 KiB
Plaintext
# dvdisaster: Additional error correction for optical media.
|
|
# Copyright (C) 2004-2018 Carsten Gnoerlich.
|
|
# Copyright (C) 2019-2021 The dvdisaster development team.
|
|
#
|
|
# Email: support@dvdisaster.org
|
|
#
|
|
# This file is part of dvdisaster.
|
|
#
|
|
# dvdisaster is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# dvdisaster is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with dvdisaster. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
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 dvdisaster-0.79.6.tar.bz2
|
|
|
|
Then change into the newly created directory:
|
|
|
|
user@host> cd /var/tmp/dvdisaster-0.79.6
|
|
|
|
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
|
|
|
|
If you want to build a CLI-only version, which doesn't depend
|
|
on the gtk2 libraries, you can run instead:
|
|
|
|
user@host> ./configure --with-cli-only
|
|
|
|
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 dvdisaster-0.79.6
|
|
|
|
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
|
|
<NAME OF YOUR DRIVE> 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!
|
|
|
|
|