annotate DOCS/tech/binary-packaging.txt @ 19382:7c6c205b88b6

trying to fix the reverting paragraph if you dissagree, dont hesitate to revert this commit or flame, but at least we should not claim that svn cannot revert commits except by recommiting the old version
author michael
date Sun, 13 Aug 2006 22:14:32 +0000
parents 9a5a62f480e6
children e7cd9c08d1d9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
1 ________________________________________________
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
2 How to make good binary package(s) of MPlayer?
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
4 by Dominik 'Rathann' Mierzejewski
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
5
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
6 About this document
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
7 ~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
8
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
9 With the release of MPlayer 0.90pre9, all licensing issues have been
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
10 eliminated and all code is licensed under the GPL, which allows
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
11 independent packagers to create and distribute binary packages. At first,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
12 this was discouraged by some of the developers, but the users' demand for
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
13 ready-to-use binary packages convinced some people to create them.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
14 Unfortunately, many currently available packages are crippled, include
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
15 their own obsolete config files or are mispackaged in some other way. This
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
16 document aims to establish a common set of packaging guidelines so that
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
17 proper official binary packages for various Linux distributions and other
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
18 operating systems can be maintained.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
19
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
20
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
21 Conventions
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
22 ~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
23 Whenever you see "MUST", it means that following the mentioned guideline
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
24 is required. Whenever you see "SHOULD", it means that following the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
25 guideline is highly recommended, but not required.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
26
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
27
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
28 Minimum feature set
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
29 ~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
30 Due to MPlayer design, it is impossible to simply include all possible
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
31 features and enable or disable them at runtime. That is why packagers
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
32 SHOULD avoid "dependency hell" by retaining a reasonable, limited default
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
33 feature set. After some discussion with other developers, we agreed that
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
34 the following features MUST be included in any official binary package:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
35
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
36 * audio/video output
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
37 - fbdev
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
38 - JPEG/PNG/TGA
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
39 - (X)MGA
16950
2ddf991d876d typo, trailing whitespace
diego
parents: 16949
diff changeset
40 - OSS
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
41 - tdfxfb
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
42 - (c/x)vidix
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
43 - X11/Xvideo
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
44
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
45 * codecs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
46 - FAAD
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
47 - libavcodec(internal)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
48 - native codecs (libmpeg2/liba52/mp3lib)
16949
d771b3d98d9d SDL no longer needed by default
rathann
parents: 14268
diff changeset
49 - Vorbis Tremor codec(internal)
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
50 - RealPlayer codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
51 - Win32/VfW/DShow/QT codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
52 - XAnim codecs support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
53
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
54 * general:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
55 - default font
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
56 - FreeType fonts support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
57 - HTML documentation
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
58 - large file support
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
59 - man page(s)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
60
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
61 * input/demuxers:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
62 - DVD(mpdvdkit2)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
63 - streaming
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
64 - Matroska(internal)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
65 - (S)VCD
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
66 - tv(v4l/v4l2)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
67
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
68 There is great demand for the GUI, so it SHOULD be included, but it MUST
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
69 come as a separate package (see Tips and Tricks for details).
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
70
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
71 Including other features, like LIVE.COM streaming or JACK support, is
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
72 acceptable. They SHOULD, however, be build-time configurable, with the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
73 default build configuration containing the above set.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
74
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
75 It seems there are some packages in the wild which lack included docs.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
76 This is VERY BAD, as it forces users to look for outside support when most
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
77 of the common problems are easy to solve and are already described in the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
78 docs, thus increasing the number of repeated posts in MPlayer mailing
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
79 lists. Binary packages MUST include both the man page and HTML
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
80 documentation. Translated versions SHOULD be included, even if your
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
81 package management system does not provide specific support for
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
82 internationalization.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
83
16949
d771b3d98d9d SDL no longer needed by default
rathann
parents: 14268
diff changeset
84 Libavcodec MUST always be in the latest development version and it MUST
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
85 be linked statically into the mplayer binary, because MPlayer requires a
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
86 recent libavcodec snapshot. While some distributions provide FFmpeg
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
87 packages containing a shared libavcodec library, they are often based on the
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
88 last "release" version of FFmpeg, which is quite old and will usually not
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
89 function correctly with MPlayer.
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
90
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
91
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
92 File locations
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
93 ~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
94 In general, you SHOULD follow your distribution guidelines. For example,
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
95 for Red Hat and Fedora RPMs I am using FHS-compliant paths:
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
96
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
97 /etc/mplayer/ system-wide configs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
98 /usr/bin/ binaries
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
99 /usr/lib/codecs/ binary codecs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
100 /usr/share/doc/mplayer-version/ docs
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
101 /usr/share/man/man1/ man page
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
102 /usr/share/man/XX/man1/ translated man page
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
103 /usr/share/mplayer/font/ fonts
17974
9a5a62f480e6 Rename the default GUI skins directory from 'Skin' to 'skins', keeping
diego
parents: 16950
diff changeset
104 /usr/share/mplayer/skins/ GUI skins
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
105
16949
d771b3d98d9d SDL no longer needed by default
rathann
parents: 14268
diff changeset
106 You MUSTN'T include the codecs.conf file in your package. It is useful
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
107 only for development purposes and often causes obscure problems for users.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
108
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
109
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
110 One package or many packages?
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
111 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
112 Although it is tempting to simply provide a single all-in-one package,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
113 I think it is best to split MPlayer into several packages. It may be
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
114 a little more troublesome for less clueful users, but it allows you to
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
115 install only what you need. This is the layout I am using for Red Hat and
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
116 Fedora RPMs:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
117
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
118 mencoder contains MEncoder binary (mencoder)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
119 mplayer contains MPlayer binary without GUI (mplayer),
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
120 config files, man pages and documentation;
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
121 required by mplayer-gui
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
122 mplayer-codecs-* contain binary codecs available from MPlayer's site
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
123 mplayer-font-* contain various bitmap fonts for OSD (obsolete)
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
124 mplayer-gui contains MPlayer binary with GUI (gmplayer);
16950
2ddf991d876d typo, trailing whitespace
diego
parents: 16949
diff changeset
125 contains default skin (Blue)
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
126 mplayer-skin-* contain various MPlayer GUI skins
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
127 mplayer-vidix contains VIDIX support library for MPlayer
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
128 mplayer-vidix-* contain VIDIX drivers for specific cards, one per package
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
129
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
130 There is no strict policy for now, just use your common sense.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
131
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
132
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
133 Compilation
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
134 ~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
135 While it is acceptable to provide packages optimized for specific CPUs,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
136 you MUST provide at least one "lowest common denominator" package set
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
137 that will work on all CPUs. This means it MUST be configured with the
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
138 --enable-runtime-cpudetection option. Building for specific CPUs requires
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
139 disabling this option, but try to make sure that users cannot accidentally
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
140 install a package not suitable for their CPU. With RPMs, for example, this
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
141 is handled automatically, when building with the "--target arch" rpm option.
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
142
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
143 Compiler flags MUST be set to either configure-generated CFLAGS or something
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
144 as close to them as possible.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
145
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
146 Users MUST be able to rebuild your source package without hand-editing on
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
147 any system with the same distribution installed. Remember to disable
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
148 (--disable-xxx) any optional features, because MPlayer's configure script
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
149 autodetects most of them. This ensures that binary package builds are
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
150 deterministic -- that is, provided they have at least the required
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
151 development packages installed, two different people using the same
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
152 distribution will get binaries with the same dependencies.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
153
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
154 You SHOULD provide an option to rebuild the package with full debug
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
155 information enabled (by passing --enable-debug=3 to ./configure and
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
156 disabling any stripping of binaries and libs during the build process).
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
157 For example my source RPM can be rebuilt with a "--with debug" option, which
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
158 does just that, making it easier to supply gdb information along with any
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
159 bug reports, while retaining all benefits of using binary packages.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
160
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
161
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
162 Modifications
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
163 ~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
164
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
165 You MUST modify `mplayer -v` output so that it is clear that a user is
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
166 using your binary package, by patching version.h and modifying the version
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
167 string inside. Suggested convention is to include distribution name and,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
168 possibly, the signature of the packager or the repository. For example:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
169
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
170 original:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
171 MPlayer 1.0pre5-3.3.2 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
172 modified:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
173 MPlayer 1.0pre5-Fedora-GS-3.3.2 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
174 MPlayer 1.0pre5-Mandrake-PLF-3.2.3 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
175 MPlayer 1.0pre5-Solaris-3.4.0 (C) 2000-2004 MPlayer Team
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
176
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
177
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
178 Tips and tricks
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
179 ~~~~~~~~~~~~~~~
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
180 In my package layout, mplayer and mplayer-gui can be installed at the same
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
181 time, because they contain differently named binaries and there is no
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
182 conflict. The trick is to build MPlayer once with --enable-gui, rename the
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
183 resulting binary to "gmplayer" and then build it again, without GUI, but
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
184 keeping the rest of ./configure options the same.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
185
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
186 To provide man pages for all MPlayer suite binaries (mplayer, gmplayer,
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
187 mencoder), you can use man-links instead of regular symbolic links.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
188 Creating a mencoder man page linked to mplayer is as simple as:
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
189
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
190 echo ".so mplayer.1" >> mencoder.1
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
191
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
192 A similar trick can be used for "man gmplayer". This avoids problems with
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
193 gzipped man pages and symbolic links.
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
194
14268
37e1dc7e7107 wording/spelling
diego
parents: 14267
diff changeset
195 Newer Red Hat and Fedora distributions keep localized man pages encoded in
14267
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
196 UTF-8. If your distribution does the same, make sure you convert MPlayer's
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
197 translated man pages to UTF-8 so that man mplayer works for locales other
ae421e5d6fb6 last draft with some insignificant changes
rathann
parents:
diff changeset
198 than English.