CompileMPlayerLibraries

Version 3 (Adrian Stutz, 10/06/2008 08:06 pm)

1 1
2 3 Adrian Stutz
h1. Compile MPlayer Libraries
3 1
4 3 Adrian Stutz
5 3 Adrian Stutz
6 3 Adrian Stutz
h2. General
7 3 Adrian Stutz
8 3 Adrian Stutz
9 1
[[PageOutline]]
10 1
11 1
Here's a rundown on the libraries included with the MPlayer build in MPlayerOSX Extended.
12 1
13 3 Adrian Stutz
If nothing is noted, then the library compiles fine with the flags and variables set in the [[CompileMPlayerStatic|Compile MPlayer with static libraries]] guide:
14 1
15 3 Adrian Stutz
<pre>
16 1
# Set path and clear pkgconfig
17 1
export MPPATH="/Users/demo/change/this"
18 1
export PKG_CONFIG_PATH=""
19 1
export PATH="$MPPATH:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin"
20 1
21 1
# Set SDK paths
22 1
export MACOSX_DEPLOYMENT_TARGET=10.4
23 1
export CFLAGS="-mmacosx-version-min=10.4 -isystem /Developer/SDKs/MacOSX10.4u.sdk"
24 1
export LDFLAGS="-mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk"
25 1
export CXXFLAGS="-mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk"
26 1
27 1
# Choose one depending on what you want to compile for:
28 1
# UNIVERSAL
29 1
export CFLAGS="$CFLAGS -arch i386 -arch ppc"
30 1
export LDFLAGS="$LDFLAGS -arch i386 -arch ppc"
31 1
export CXXFLAGS="$CXXFLAGS -arch i386 -arch ppc"
32 1
33 1
# INTEL (nothing needed)
34 1
35 1
# PPC
36 1
export CFLAGS="$CFLAGS -arch ppc -faltivec -mcpu=7450"
37 1
export LDFLAGS="$LDFLAGS -arch ppc"
38 1
export CXXFLAGS="$CXXFLAGS -arch ppc -faltivec -mcpu=7450"
39 1
40 1
# Paths of the build environment
41 1
export LDFLAGS="$LDFLAGS -L$MPPATH/usr/local/lib -Wl,-search_paths_first"
42 1
export CFLAGS="$CFLAGS -I$MPPATH/usr/local/include"
43 1
export CXXFLAGS="$CXXFLAGS -I$MPPATH/usr/local/include"
44 3 Adrian Stutz
</pre>
45 1
46 1
And the usual configure call:
47 3 Adrian Stutz
<pre>
48 1
./configure --disable-shared --disable-dependency-tracking --path=$MPPATH
49 3 Adrian Stutz
</pre>
50 1
51 1
52 3 Adrian Stutz
h2. ZLIB (1.2.3)
53 1
54 3 Adrian Stutz
55 3 Adrian Stutz
http://zlib.net/ 
56 3 Adrian Stutz
57 3 Adrian Stutz
*UB*
58 3 Adrian Stutz
59 1
Compiles with a straight:
60 3 Adrian Stutz
<pre>
61 1
./configure
62 3 Adrian Stutz
</pre>
63 1
64 1
65 3 Adrian Stutz
h2. EXPAT (2.0.1)
66 1
67 1
68 3 Adrian Stutz
http://expat.sourceforge.net/ 
69 1
70 3 Adrian Stutz
*UB*
71 1
72 3 Adrian Stutz
No _--disable-dependency-tracking_ but compiles fine.
73 1
74 1
75 3 Adrian Stutz
h2. FREETYPE (2.3.7)
76 1
77 1
78 3 Adrian Stutz
http://www.freetype.org/ 
79 1
80 3 Adrian Stutz
*UB*
81 1
82 3 Adrian Stutz
No _--disable-dependency-tracking_ but compiles fine.
83 1
84 3 Adrian Stutz
85 3 Adrian Stutz
h2. ICONV (1.12)
86 3 Adrian Stutz
87 3 Adrian Stutz
88 3 Adrian Stutz
http://www.gnu.org/software/libiconv/ 
89 3 Adrian Stutz
90 3 Adrian Stutz
*UB*
91 3 Adrian Stutz
92 3 Adrian Stutz
93 3 Adrian Stutz
h2. FONTCONFIG (2.6.0)
94 3 Adrian Stutz
95 3 Adrian Stutz
96 3 Adrian Stutz
http://fontconfig.org/wiki/ 
97 3 Adrian Stutz
98 3 Adrian Stutz
*UB*
99 3 Adrian Stutz
100 3 Adrian Stutz
101 3 Adrian Stutz
h2. NCURSES (5.6 +patches)
102 3 Adrian Stutz
103 3 Adrian Stutz
104 3 Adrian Stutz
http://www.gnu.org/software/ncurses/ 
105 3 Adrian Stutz
106 3 Adrian Stutz
*UB*
107 3 Adrian Stutz
108 1
The most current version with the patches from:
109 1
ftp://invisible-island.net/ncurses/5.6/
110 1
111 3 Adrian Stutz
Configure needs patching for the [[CompileMPlayerStatic#The_XOPEN_SOURCEissue|_XOPEN_SOURCE issue] [attachmentconfigure_XOPEN_SOURCE_darwinpatch]] 
112 1
113 1
Then compile with:
114 3 Adrian Stutz
<pre>
115 1
./configure --without-shared
116 1
make libs
117 1
make install.libs
118 3 Adrian Stutz
</pre>
119 1
120 1
121 3 Adrian Stutz
h2. LZO2 (2.03)
122 1
123 3 Adrian Stutz
124 3 Adrian Stutz
http://www.oberhumer.com/opensource/lzo/ 
125 3 Adrian Stutz
126 3 Adrian Stutz
*INTEL & PPC SEPARATE*
127 3 Adrian Stutz
128 1
Configure for PPC:
129 3 Adrian Stutz
<pre>
130 1
./configure --disable-shared --disable-dependency-tracking --disable-asm
131 3 Adrian Stutz
</pre>
132 1
133 1
134 3 Adrian Stutz
h2. LIBOGG (SVN:r15377)
135 1
136 3 Adrian Stutz
137 3 Adrian Stutz
http://xiph.org/downloads/ 
138 3 Adrian Stutz
139 3 Adrian Stutz
*UB*
140 3 Adrian Stutz
141 1
1.1.3 doesn't compile. SVN does.
142 1
143 1
144 3 Adrian Stutz
h2. LIBVORBIS (1.2.0)
145 1
146 1
147 3 Adrian Stutz
http://xiph.org/downloads/ 
148 1
149 3 Adrian Stutz
*UB*
150 3 Adrian Stutz
151 3 Adrian Stutz
152 3 Adrian Stutz
h2. LIBTHEORA (1.0beta3)
153 3 Adrian Stutz
154 3 Adrian Stutz
155 3 Adrian Stutz
http://xiph.org/downloads/ 
156 3 Adrian Stutz
157 3 Adrian Stutz
*INTEL & PPC SEPARATE*
158 3 Adrian Stutz
159 1
Configure for PPC:
160 3 Adrian Stutz
<pre>
161 1
./configure --disable-shared --disable-dependency-tracking --disable-asm
162 3 Adrian Stutz
</pre>
163 1
164 1
165 3 Adrian Stutz
h2. LIBMAD (0.15.1b)
166 1
167 1
168 3 Adrian Stutz
http://www.underbit.com/products/mad/ 
169 1
170 3 Adrian Stutz
*INTEL & PPC SEPARATE*
171 1
172 1
173 3 Adrian Stutz
h2. FAAD2 (2.6)
174 3 Adrian Stutz
175 3 Adrian Stutz
176 3 Adrian Stutz
http://www.audiocoding.com/faad2.html 
177 3 Adrian Stutz
178 3 Adrian Stutz
*UB*
179 3 Adrian Stutz
180 3 Adrian Stutz
181 3 Adrian Stutz
h2. LIBDV (1.0.0)
182 3 Adrian Stutz
183 3 Adrian Stutz
184 3 Adrian Stutz
http://libdv.sourceforge.net/ 
185 3 Adrian Stutz
186 3 Adrian Stutz
*UB*
187 3 Adrian Stutz
188 1
Needs additional flags and options:
189 3 Adrian Stutz
<pre>
190 1
export LDFLAGS="$LDFLAGS -flat_namespace -undefined suppress"
191 1
./configure --disable-shared --disable-xv --disable-gtk --disable-sdl --disable-asm --disable-dependency-tracking
192 3 Adrian Stutz
</pre>
193 1
194 1
195 3 Adrian Stutz
h2. JPEG (6b)
196 1
197 1
198 3 Adrian Stutz
http://www.ijg.org/ 
199 3 Adrian Stutz
200 3 Adrian Stutz
*UB*
201 3 Adrian Stutz
202 3 Adrian Stutz
Needs the patches from [[MacPorts]]: http://trac.macports.org/browser/trunk/dports/graphics/jpeg/files
203 3 Adrian Stutz
204 1
Only compiles with shared libraries enabled. Remove them after install!
205 3 Adrian Stutz
<pre>
206 1
./configure --enable-static --enable-shared
207 3 Adrian Stutz
</pre>
208 1
209 1
210 3 Adrian Stutz
h2. LIBPNG (1.2.32)
211 1
212 1
213 3 Adrian Stutz
http://www.libpng.org/pub/png/libpng.html 
214 1
215 3 Adrian Stutz
*UB*
216 1
217 1
218 3 Adrian Stutz
h2. GIFLIB (4.1.6)
219 1
220 1
221 3 Adrian Stutz
http://sourceforge.net/projects/giflib/ 
222 3 Adrian Stutz
223 3 Adrian Stutz
*UB*
224 3 Adrian Stutz
225 3 Adrian Stutz
226 3 Adrian Stutz
h2. LIBDVDCSS (1.2.9)
227 3 Adrian Stutz
228 3 Adrian Stutz
229 3 Adrian Stutz
http://www.videolan.org/developers/libdvdcss.html 
230 3 Adrian Stutz
231 3 Adrian Stutz
*UB*
232 3 Adrian Stutz
233 3 Adrian Stutz
234 3 Adrian Stutz
h2. LIBDVDREAD (SVN:r1153)
235 3 Adrian Stutz
236 3 Adrian Stutz
237 3 Adrian Stutz
http://svn.mplayerhq.hu/dvdnav/trunk/libdvdread/ 
238 3 Adrian Stutz
239 3 Adrian Stutz
*UB*
240 3 Adrian Stutz
241 3 Adrian Stutz
To enable [[DeCSS]], add following line to _config.h_ after configure:
242 3 Adrian Stutz
<pre>
243 1
#define HAVE_DVDCSS_DVDCSS_H 1
244 1
245 3 Adrian Stutz
</pre>
246 1
247 1
248 1
249 3 Adrian Stutz
h2. LIBDVDNAV (SVN:r1153)
250 1
251 3 Adrian Stutz
252 3 Adrian Stutz
http://svn.mplayerhq.hu/dvdnav/trunk/libdvdnav/ 
253 3 Adrian Stutz
254 3 Adrian Stutz
*UB*
255 3 Adrian Stutz
256 1
LDFLAGS for libdvdcss:
257 3 Adrian Stutz
<pre>
258 1
export LDFLAGS="$LDFLAGS -ldvdcss"
259 3 Adrian Stutz
</pre>
260 1
261 1
262 3 Adrian Stutz
h2. LIBDCA (SVN:r90)
263 3 Adrian Stutz
264 3 Adrian Stutz
265 3 Adrian Stutz
http://www.videolan.org/developers/libdca.html 
266 3 Adrian Stutz
267 3 Adrian Stutz
*UB*