Az MPlayer számos kereskedelmi Unix variánsra portolva lett. Mivel a fejlesztő környezet ezeken a rendszereken másfajta, mint a szabad Unix-okon, lehet, hogy némi kézi beállítást igényel a fordítás.
A Solarisnak még mindig rossz, POSIX-inkompatibilis rendszer eszközei és shell-je
van az alapértelmezett helyeken. Amíg nem tesznek egy bölcs lépést a számítástechnikai
kőkorszak leváltására, addig a /usr/xpg4/bin könyvtárat
hozzá kell adnod a PATH
-hoz.
Az MPlayer Solaris 2.6 vagy újabb rendszereken működik. A SUN audió vezérlőjét a -ao sun kapcsolóval használhatod.
Az MPlayer kihasználja az
UltraSPARC gépek VIS
utasításkészletét (az MMX-hez hasonló), bár jelenleg csak a
libmpeg2
-ben,
libvo
-ben és
a libavcodec
-ben, de az
mp3lib
-ben nem.
Egy 400Mhz-es CPU elég, hogy élvezhetően lejátsz egy VOB filet.
Szükséged lesz egy felinstallált
mLib
-re
is.
Figyelmeztetés:
A mediaLib jelenleg le van tiltva alapértelmezésben az MPlayerben, mivel hibás. A SPARC felhasználók, akik az MPlayert mediaLib támogatással forgatták, egy vastag, zöld csíkról számoltak be a libavcodec-kal kódolt és dekódolt videók esetén. Ha mégis akarod, engedélyezheted:
./configure --enable-mlib
Azonban ezt a saját felelősségedre tedd. Az x86 felhasználóknak soha sem ajánlott mediaLib-et használni, mivel nagyon lerontja az MPlayer teljesítményét.
Solaris SPARC-on GNU C/C++ fordító is kell; az nem számít, hogy assemblerrel vagy nélküle van.
Solaris x86-on kell a GNU assembler és a GNU C/C++ fordító is, aminek támogatnia kell a GNU assemblert! Az MPlayer igencsak támaszkodik az MMX, SSE és 3DNOW! utasításokra, amiket a Sun standard assemblere (/usr/ccs/bin/as) nem támogat.
A configure script megpróbálja megkereseni, hogy a
"gcc" parancsod melyik assemblert indítja (ha nem sikerül neki,
használd a
--as=/ahova/installalva/lett/a/gnu-as
kapcsolót, hogy megadd a configurenak az "as" helyét
a rendszeredben).
Megoldások a gyakori problémákra:
Hibaüzenet a configure-tól egy Solaris x86-os rendszeren GNU assembler nélküli GCC használata esetén:
% configure ... Checking assembler (/usr/ccs/bin/as) ... , failed Please upgrade(downgrade) binutils to 2.10.1...
(Megoldás: --with-as=gas-al fordított GCC használata)
Tipikus hiba, ha a GNU C fordító nem GNU assemblert (GNU as) használ:
% gmake ... gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c Assembler: mplayer.c "(stdin)", line 3567 : Illegal mnemonic "(stdin)", line 3567 : Syntax error ... további "Illegal mnemonic" és "Syntax error" hibák ...
Az MPlayer segfault-olhat ha win32codec-eket használó videót akarsz kódolni vagy dekódolni:
... Trying to force audio codec driver family acm... Opening audio decoder: [acm] Win32/ACM decoders sysi86(SI86DSCR): Invalid argument Couldn't install fs segment, expect segfault MPlayer interrupted by signal 11 in module: init_audio_codec ...
Ez a Solaris 10-ben és a pre-Solaris Nevada b31-ben a sysi86() egyik változtatása miatt van. Javítva lett a Solaris Nevada b32-ben; bár a Sun-nak még vissza kell vezetnie a javítást a Solaris 10-be. Az MPlayer Project felhívta a Sun figyelmét a problémára, a javítás készülőben van a Solaris 10-hez. Ettől a hibáról további információt itt találhatsz: http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6308413.
A Solaris 8 hibái miatt nem biztos, hogy le tudsz játszani 4 GB-nál nagyobb DVD lemezt:
Az sd(7D) vezérlőnek a Solaris 8 x86-ban van egy hibája a >4GB lemez blokkok elérésénél egy eszközön, melyen a logikai blokkméret != DEV_BSIZE-zel (pl. CD-ROM és DVD média). A 32 bites egész túlcsordulása miatt a lemez cím modulo 4GB kerül megcímzésre (http://groups.yahoo.com/group/solarisonintel/message/22516). Ez a probléma a SPARC alapú Solaris 8-on nincs.
Egy hasonló hiba van a hsfs(7FS) fájl rendszer kódjában is (alias ISO9660), a hsfs nem támogatja a 4 GB-nál nagyobb partíciókat/lemezeket, minden adat modulo 4GB-vel lesz elérve (http://groups.yahoo.com/group/solarisonintel/message/22592). Ez a hiba a 109764-04 (SPARC) / 109765-04 (x86) jelzésű patch-ek telepítése után megszűnik.
Joe Page ad helyet egy részletes HP-UX MPlayer HOGYAN-nak a weboldalán, amit Martin Gansser írt. Ezekkel az utasításokkal a fordítás után egyből kész programot kapsz. A következő információk a HOGYAN-ból lettek átvéve.
GCC 3.4.0 vagy későbbire lesz szükséged és SDL 1.2.7 vagy újabb. A HP cc nem tud működő programot fordítani, a korábbi GCC verziók pedig hibásak. Az OpenGL funkcionalításhoz telepítened kel a Mesa-t és így a gl és gl2 videó kimeneti vezérlőknek működniük kell, bár nagyon lassúak is lehetnek a CPU sebességétől függően. A meglehetősen gyenge natív HP-UX hangrendszer helyett inkább használd a GNU esound-ot.
Hozd létre a DVD eszközt nézd végig a SCSI buszt:
# ioscan -fn Class I H/W Path Driver S/W State H/W Type Description ... ext_bus 1 8/16/5 c720 CLAIMED INTERFACE Built-in SCSI target 3 8/16/5.2 tgt CLAIMED DEVICE disk 4 8/16/5.2.0 sdisk CLAIMED DEVICE PIONEER DVD-ROM DVD-305 /dev/dsk/c1t2d0 /dev/rdsk/c1t2d0 target 4 8/16/5.7 tgt CLAIMED DEVICE ctl 1 8/16/5.7.0 sctl CLAIMED DEVICE Initiator /dev/rscsi/c1t7d0 /dev/rscsi/c1t7l0 /dev/scsi/c1t7l0 ...
A képernyőn a kimenetben egy Pioneer DVD-ROM látszik a 2. SCSI címen. A kártya a 8/16-os hardver útra az 1-essel hivatkozik.
Készíts egy linket a nyers eszközről a DVD eszközre.
# ln -s /dev/rdsk/c<SCSI busz hivatkozás>
t<SCSI cél ID>
d<LUN>
/dev/<eszköz>
Például:
# ln -s /dev/rdsk/c1t2d0 /dev/dvd
Itt van pár gyakori probléma megoldása:
A rendzser összeomlik indításkor a következő hibaüzenettel:
/usr/lib/dld.sl: Unresolved symbol: finite (code) from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/../../../libGL.sl
Ez azt jelenti, hogy a .finite().
függvény
nincs benne a szabványos HP-UX math függvénykönyvtárban.
Ekkor .isfinite().
van helyette.
Megoldás: Használd a legújabb Mesa depot fájlt.
Összeomlás lejátszáskor a következő hibaüzenettel:
/usr/lib/dld.sl: Unresolved symbol: sem_init (code) from /usr/local/lib/libSDL-1.2.sl.0
Megoldás: Használd a configure extralibdir opcióját --extra-ldflags="/usr/lib -lrt"
Az MPlayer segfault-ol egy ilyesmi üzenettel:
Pid 10166 received a SIGSEGV for stack growth failure. Possible causes: insufficient memory or swap space, or stack size exceeded maxssiz. Segmentation fault
Megoldás:
A HP-UX kernel alapértelmezésként 8MB-os(?) méretű vermet használ
processzenként. (11.0 és az újabb 10.20 foltok engedik növelni a
maxssiz
-t egészen 350MB-ig a 32-bit-es
programokhoz). Növelned kell a maxssiz
-t
és újrafordítani a kernelt (majd reboot-olni). Ehhez használhatod
a SAM-ot. (Ha már itt tartunk, nézd meg a maxdsiz
paramétert is az egy program által használható maximum adatmennyiséghez.
Az alkalmazásaidon múlik, hogy az alapértelmezett 64MB elég vagy sem.)
Az MPlayer sikeresen fordul AIX 5.1-en, 5.2-n és 5.3-on, GCC 3.3 vagy újabbal. Az MPlayer fordítását AIX 4.3.3 és régebbi változaton nem teszteltük. Javasoljuk, hogy az MPlayert GCC 3.4 vagy újabbal fordítsd vagy ha POWER5-ön forgatsz, GCC 4.0 szükséges.
A CPU detektálás még fejlesztés alatt áll. A következő architektúrákat teszteltük:
604e
POWER3
POWER4
A következő architektúrák nem lettek tesztelve, de működhetnek:
POWER
POWER2
POWER5
Az Ultimedia Services-en keresztüli hang nem támogatott, mert az Ultimedia-t dobták az AIX 5.1-ben; ezért az egyetlen lehetőség az AIX Open Sound System (OSS) vezérlők használata a 4Front Technologies-től http://www.opensound.com/aix.html. A 4Front Technologies szabadon biztosítja az OSS vezérlőket az AIX 5.1-hez nem-üzleti felhasználásra; azonban jelenleg nincs hang kimeneti vezérlő AIX 5.2 és 5.3 alá. Ez azt jelenti, hogy az AIX 5.2 és 5.3 alatt jelenleg az MPlayer nem képes audió kimenetre.
Megoldás a gyakori problémákra:
Ha ezt a hibaüzenetet kapod a configure-tól:
$ ./configure ... Checking for iconv program ... no No working iconv program found, use --charset=US-ASCII to continue anyway. Messages in the GTK-2 interface will be broken then.
Ez azért van, mert az AIX nem-szabványos kódlap neveket használ; ezért az MPlayer kimenetének másik kódlapra konvertálása jelenleg nem támogatott. A megoldás:
$ ./configure --charset=noconv