old-www/HOWTO/DVD-HOWTO-7.html

105 lines
4.2 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>Linux DVD HOWTO: Problems</TITLE>
<LINK HREF="DVD-HOWTO-8.html" REL=next>
<LINK HREF="DVD-HOWTO-6.html" REL=previous>
<LINK HREF="DVD-HOWTO.html#toc7" REL=contents>
</HEAD>
<BODY>
<A HREF="DVD-HOWTO-8.html">Next</A>
<A HREF="DVD-HOWTO-6.html">Previous</A>
<A HREF="DVD-HOWTO.html#toc7">Contents</A>
<HR>
<H2><A NAME="Problems"></A> <A NAME="s7">7. Problems</A></H2>
<H2><A NAME="Run time erors"></A> <A NAME="ss7.1">7.1 Run time errors</A>
</H2>
<P>This is a (small) list of known run-time errors.
<H3>Illegal Instruction Error</H3>
<P>If you use a non-Intel chip (K6 especially), and you are getting
this error when you try to run mpeg2video, try editing
nist/configure.in, lines 129 and 130:
<P>
<PRE>
CFLAGS="$CFLAGS -DHAVE_MMX -DLINUX -march=i686 -fschedule-insns2 -malign-doub
CXXFLAGS="$CXXFLAGS -DHAVE_MMX -DLINUX -march=i686 -fschedule-insns2 -malign-
</PRE>
<P>
replace "-march=i686" in both with "-march=i586", and then recompile
and reinstall.
<H2><A NAME="Compilation errors"></A> <A NAME="ss7.2">7.2 Compilation errors</A>
</H2>
<P>This is a running list of common compilation errors that have known
fixes.
<H3>`dvd_struct' undeclared...</H3>
<P>The most frequent problem people have when trying to compile these utilities stems from oms looking in the wrong place for the kernel headers. By default, it uses /usr/include/[linux|asm], but those headers are from a stable kernel so that when you compile a normal program, it will be using older headers. OMS needs to use headers with dvd ioctl support. If things are set up wrong many things are undeclared and compilation fails. The best way to fix this is to use the configure option --with-kernel-headers=(path to headers). Another way is to adjust which headers are in the default location.
<P>
<PRE>
These commands should do it:
# mkdir /usr/include/old
# mv /usr/include/linux /usr/include/old/linux
# mv /usr/include/asm /usr/include/old/asm
# mv /usr/include/scsi /usr/include/old/scsi
# ln -s /usr/src/linux/include/linux /usr/include/linux
# ln -s /usr/src/linux/include/scsi /usr/include/scsi
# ln -s /usr/src/linux/include/asm /usr/include/asm
</PRE>
<H3>Can't determine absolute dir of '../../../../src/plugin/codec/mpeg2dec/.libs'</H3>
<P>Another common error is with the oms/src/plugin/codec/mpeg2dec/.libs
directory. For some reason or another, this directory does not
exist, and it needs to for compilation. To fix it, just make the
directory:
<P>
<PRE>
# mkdir src/plugin/codec/mpeg2dec/.libs
</PRE>
<H3>Can't find libXv.so or libXxf86dga.so</H3>
<P>Xfree86 4.x doesn't build shared libs for Xv and Xxf86dga. However, the
shared lib setup OMS uses needs them. Build them as follows in your
favorite lib dir:
<P>
<PRE>
# ld --whole-archive -shared -o libXv.so libXv.a
# ld --whole-archive -shared -o libXxf86dga.so libXxf86dga.a
</PRE>
<H3>Failure via segfault for no apparent reason</H3>
<P>Sometime you have old libraries laying around that are used by mistake.
This will cause unwanted behavior such as crashing. Get rid of old
libraries from /usr/local/lib or wherever you put them and things
should work.
<H2><A NAME="Broken stuff"></A> <A NAME="ss7.3">7.3 Broken stuff</A>
</H2>
<P>Features that don't currently work as intended:
<UL>
<LI> The chapter seek buttons may fail.</LI>
<LI> The play/pause/stop buttons may fail to work.</LI>
<LI> Audio/video may skip or sound "choppy". This is due to proper syncronization and framedropping not being implemented yet.</LI>
</UL>
<H2><A NAME="Other errors"></A> <A NAME="ss7.4">7.4 Other errors</A>
</H2>
<P>If your problem isn't listed here, then likely the current CVS
code has a bug in it or is missing a feature. You can either
hope it will be fixed and update CVS every so often or subscribe
to the mailing lists and report the bug or request a feature.
To subscribe send a blank email to
<A HREF="mailto:livid-user-subscribe@linuxvideo.org">livid-user-subscribe@linuxvideo.org</A>.
<HR>
<A HREF="DVD-HOWTO-8.html">Next</A>
<A HREF="DVD-HOWTO-6.html">Previous</A>
<A HREF="DVD-HOWTO.html#toc7">Contents</A>
</BODY>
</HTML>