If you use ldd for this purpose, it will report indirect lib dependencies as well, resulting in the problem of excessive build dependencies. Line 6 is the version of the Debian Policy Manual standards this package follows, the one you read while making your package.
Line 9 is the name of the binary package. This is usually the same as the name of the source package, but it doesn't necessarily have to be that way. Line 10 describes the architectures the binary package can be compiled for. This value is usually one of the following depending on the type of the binary package: [32]. The generated binary package is an architecture independent one usually consisting of text, images, or scripts in an interpreted language. We leave line 10 as is since this is written in C.
If your package is architecture independent for example, a shell or Perl script, or a document , change this to all , and read later in Section 4. Line 11 shows one of the most powerful features of the Debian packaging system.
Packages can relate to each other in various ways. The package management tools usually behave the same way when dealing with these relations; if not, it will be explained.
See dpkg 8 , dselect 8 , apt 8 , aptitude 1 , etc. Here is a simplified description of package relationships: [33]. The package will not be installed unless the packages it depends on are installed. Use this if your program absolutely will not run or will cause severe breakage unless a particular package is present. Use this for packages that are not strictly necessary but are typically used with your program. When a user installs your program, all front-ends will probably prompt them to install the recommended packages.
Use this for packages which will work nicely with your program but are not at all necessary. When a user installs your program, they will probably not be prompted to install suggested packages. This is stronger than Depends. The package will not be installed unless the packages it pre-depends on are installed and correctly configured. Use this very sparingly and only after discussing it on the debian-devel lists. Read: don't use it at all.
The package will not be installed until all the packages it conflicts with have been removed. Use this if your program absolutely will not run or will cause severe problems if a particular package is present. When installed the package will break all the listed packages. Normally a Breaks entry specifies that it applies to versions earlier than a certain value.
The resolution is generally to use higher-level package management tools to upgrade the listed packages. For some types of packages where there are multiple alternatives, virtual names have been defined.
You can get the full list in the virtual-package-names-list. Use this if your program provides a function of an existing virtual package. Use this when your program replaces files from another package, or completely replaces another package used in conjunction with Conflicts. Files from the named packages will be overwritten with the files from your package.
All these fields have uniform syntax. They are a list of package names separated by commas. These package names may also be lists of alternative package names, separated by vertical bar symbols pipe symbols.
The fields may restrict their applicability to particular versions of each named package. The restriction of each individual package is listed in parentheses after its name, and should contain a relation from the list below followed by a version number value.
For example,. It generates a list of ELF executables and shared libraries it has found for each binary package. It generates a list of a dependencies on perl or perlapi for each binary package.
Some debhelper commands may cause the generated package to depend on some additional packages. All such commands generate a list of required packages for each binary package. Having said all that, we can leave the Depends field exactly as it is now, and insert another line after it saying Suggests: file , because gentoo can use some features provided by the file package.
Line 9 is the Homepage URL. Line 12 is the short description. Terminals are conventionally 80 columns wide so this shouldn't be longer than about 60 characters. I'll change it to fully GUI-configurable, two-pane X file manager. Line 13 is where the long description goes. This should be a paragraph which gives more details about the package. Column 1 of each line should be empty. There must be no blank lines, but you can put a single.
Also, there must be no more than one blank line after the long description. This file contains information about the copyright and license of the upstream sources. Debian Policy Manual, Let's use the --copyright gpl2 option here to get a template file for the gentoo package released under GPL The information here will be copied to the Changed-By field in the. Any line that consists entirely i. Vim modelines or Emacs local variables, and ancient changelog entries with other formats at the end of the file should be accepted and preserved on output, but their contents might be otherwise ignored and parsing stopped at that point.
Source file: deb-changelog. Found a problem? Said file descriptor must be open for writing. It is allowed to give this option more than once. The following two lines of arguments are semantically equivalent:.
If there is an upstream changelog file, it must be named "changelog. Both changelog files should be compressed using "gzip -9". Even if they start out small, they will become large with time. Note that the filename might contain spaces, but the scriptpath will not, because linux only looks at the first word when executing a script. The first path is preferred. See the Lintian User's Manual for the syntax of overrides. However whitespace within the value is respected, as demonstrated by this example:.
Unless otherwise specified, no option may appear more than once. Lintian will ignore empty lines or lines starting with the -character. Generally options will be the long form of the command-line option without the leading dashes.
There some exceptions such as --profile , where Lintian uses the same name as the environment variable. In the configuration file, all options listed must have a value, even if they do not accept a value on command line e. The values "yes", "y", "1", or "true" will enable such an option and "no", "n", "0" or "false" will disable it.
Prior to the 2. For other options, they generally take the same values as they do on the command line. Though some options allow a slightly different format e. Beyond command line options, it is also allowed to specify the environment variable "TMPDIR" in the configuration file.
If omitted this defaults to "ALL". The pseudo type "ALL" acts as a wildcard for any real package type. For more info, please see "Group query" below. Note: For changes packages, this must match the contents of the architecture field in the changes.
This field may contain a space e. In each directory, Lintian will attempt to find a. If no. Source file: lintian. Found a problem? See the FAQ. It contains automated checks for many aspects of Debian policy as well as some checks for common errors.
This is the default action. Run only the specified checks. You can either specify the name of the check script or the abbreviation. The list of such tags is refreshed with each Lintian release, so may be slightly out of date if it has changed recently. Run only the checks that issue the requested tags.
0コメント