[cvs] / xvidcore / doc / INSTALL Repository:
ViewVC logotype

Diff of /xvidcore/doc/INSTALL

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1, Fri Oct 17 15:25:44 2003 UTC revision 1.1.2.1, Fri Oct 17 15:25:44 2003 UTC
# Line 0  Line 1 
1    Table of contents:
2    ==================
3    
4    1/ Generic install procedure for Unix based systems
5      1.a/ Requirements.
6      1.b/ How to build from a release tarball.
7      1.c/ How to build from CVS.
8      1.d/ Cross compiling xvidcore.
9      1.e/ What is the meaning of the xvidcore Makefile output.
10      1.f/ Building a Debian package.
11    
12    2/ Generic install procedure for Win32/MSVC.
13      2.a/ Requirements.
14      2.b/ How to build the VFW frontend from a release tarball.
15      2.c/ How to build from CVS.
16    
17    
18    1/ Generic install procedure for Unix based systems
19    ===================================================
20    
21    This build process works for most common Unix based systems, including
22    GNU/Linux, (Free|Open|Net)BSD, Solaris and faked unix environments
23    like cygwin and minsys on Win32 platforms.
24    
25      1.a/ Requirements
26      -----------------
27       - ANSI C compiler (gcc)
28       - make (GNU make, BSD make, Solaris make)
29       - a C library providing ANSI C functions like malloc/free/realloc
30         and some other standard functions.
31       - nasm on ia32 platforms for MMX/SSE optimized code.
32    
33    
34      1.b/ How to build from a release tarball
35      ----------------------------------------
36    
37    Get the latest version on http://www.xvid.org/, and uncompress it on
38    your disk. Let's name the resulting source directory ${xvidcore}.
39    
40    The next step allows you to configure the xvid sources.
41      # cd ${xvidcore}/build/generic
42      # ./configure
43    
44    Some building options can be tuned thanks to the ./configure tool. You
45    can use your own CC and CFLAGS variables in order to override xvid's
46    default ones. To have a list of known options:
47      # ./configure --help
48    
49    Now xvidcore is configured according to your specific platform. You
50    can still handwrite the platform.inc file in order to add/remove
51    specific flags that ./configure may have set them wrong.
52    
53    It is time to build xvidcore:
54      # make
55    
56    That creates a =build directory where all object files go, and where
57    the build targets are linked. If no error was reported by the build
58    process, then you can install it on your system:
59      # make install
60    
61    This copies the shared and static libraries to the prefix location
62    passed to the ./configure tool (/usr/local by default). The xvid.h
63    include file is also copied during the "make install" run.
64    
65    Voila, xvidcore is installed on your system, make sure your runtime
66    linker knows about the xvidcore prefix lib dir where it is
67    installed. And make also sure that it generates a symlink to its
68    SONAME. In case it would do not take care of the symlink itself:
69      # cd ${prefix}/lib
70      # ls libxvidcore.so.*
71        ls should list at least one libxvidcore.so.MAJOR.MINOR file
72      # ln -s libxvidcore.so.MAJOR.MINOR libxvidcore.so.MAJOR
73    
74    You may also add a .so link to .so.MAJOR, so that applications linked
75    against .so are in fact linked to .so.MAJOR and thus ensures better
76    binary compatibility as we take care not changing the MAJOR number
77    until there is an incompatible ABI change.
78      # ln -s libxvidcore.so.MAJOR libxvidcore.so
79    
80    
81      1.c/ How to build from CVS
82      --------------------------
83    
84    In order to build from CVS, you need some more requirements compared
85    to the release building process:
86      - GNU autoconf >= 2.5
87      - GNU automake (no specific version)
88      - GNU libtool (no specific version)
89    
90    Grab the desired CVS version you want to build.
91      # cvs -d:pserver:anonymous@cvs.xvid.org:/xvid login
92        (just type enter)
93      # cvs -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore
94        (read the CVS documentation if you want details about branch
95         checking outs)
96    
97    You now need to bootstrap the build files:
98      # cd xvidcore/build/generic
99      # ./bootstrap.sh
100    
101    A configure script has been bootstraped, you're now able to follow
102    the "Build from release tarballs" steps.
103    
104    
105      1.d/ Cross compiling xvidcore.
106      ------------------------------
107    
108    The configure script allows an easy handling of cross compilation. You
109    have just to specify the host and build platform values.
110    
111    e.g: building Win32 libxvidcore.dll from a gnu/linux systems
112     # cd ${xvidcore}/build/generic
113     # ./configure --host=i386-mingw32 --build=i386-pc-linux-gnu
114    
115    And then build as usual. You can build the vfw frontend as well,
116    specifying the CC compiler and the WINDRES tool to use on the make
117    command line.
118     # cd ${xvidcore}/vfw/bin
119     # make -f Makefile.cygwin CC=i386-mingw32-gcc WINDRES=i386-mingw32-windres
120    
121    
122      1.e/ What is the meaning of xvidcore Makefile output.
123      -----------------------------------------------------
124    
125    The makefile available in ${xvidcore}/build/generic is handwritten and
126    outputs uncommon building progress strings to the terminal. You may
127    want to understanding their meaning. Here is a brief explaination.
128    
129      - A: a/dir/file.(asm|s)
130        This an assembling rule assembling 'a/dir/file.(asm|s)'
131      - C: a/dir/file.c
132        This is a compilation rule compiling 'a/dir/file.c'
133      - Cl: Stuff
134        This is a cleaning rule in action
135      - D: Directory
136        This is a rule creating 'Directory'
137      - I: a/dir/file
138        Installing 'file' in 'a/dir'
139      - L: file
140        Linking 'file'
141    
142    
143      1.f/ Building a Debian package.
144      -------------------------------
145    
146    Release tarballs contain a debian dir so that you can easily build a
147    debian package. Just execute the usual steps. They may be sumed up to:
148      # cd ${xvidcore}
149      # dpkg-buildpackage -rfakeroot
150    
151    If all went right, you're now able to install the package:
152      # cd ..
153      # dpkg -i libxvidcore...
154    
155    
156    
157    2/ Generic install procedure for Win32/MSVC.
158    ============================================
159    
160    
161    
162      2.a/ Requirements.
163      ------------------
164    
165        - MS VisualDev 6 Processor Pack 5 or MS VisualDev 7
166        - nasm installed as 'nasm' in the msvc binary search paths.
167    
168      2.b/ How to build the VFW frontend from a release tarball.
169      ----------------------------------------------------------
170    
171    Download the latest source distribution from http://www.xvid.org/ and
172    uncompress it on your disk. Let's call this directory ${xvidcore}.
173    
174        - Open the workspace xvidcore.dsw located in
175          ${xvidcore}/build/win32.
176        - Then choose the libxvidcore project as the Active project of the
177          workspace.
178        - Make sure the Active configuration is
179          'libxvidcore Win32 Release'
180        - Build the project (F7)
181        - Open the project vfw.dsp file located in ${xvidcore}/vfw.
182        - Make sure the Active configuration is
183          'vfw Win32 Release'
184        - Build the project (F7)
185        - Install the resulting VFW frontend using the xvid.inf file
186          provided in ${xvidcore}/vfw/bin. Right click on the file, and
187          then click 'Install'
188    
189      2.c/ How to build from CVS.
190      ---------------------------
191    
192    You have first to retrieve the sources from the xvid CVS repository
193    using a tool like WinCVS. Then follow the normal steps explained in
194    the previous section.

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.1.2.1

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4