Fórum Ubuntu CZ/SK
Ostatní => Archiv => Téma založeno: Rincewind 03 Listopadu 2006, 18:51:53
-
Nevíte někdo, jak zkompilovat avidemux 2.2 v Edgy Eftovi s podporou x264?
Ještě v Dapperovi sem postupoval dle návodu na:
http://www.ubuntuforums.org/showthread.php?t=203898&highlight=compile+avidemux
který (s trochu krkolomně, ale přece jen řešitelným problémem se závislostmi) funguje i v Edgym,
ale po čisté instalaci Edgyho uvedený postup vede
a) s nainstalovaným balíkem x264-bin ale bez nainstalovaného libx264-dev k funkčnímu avidemuxu bez x264
b) s nainstalovanými balíky x264-bin a libx264-dev k přerušení kompilace a chybě:
(code)make[3]: Entering directory `/home/jirik/avidemux2/2-backup/avidemux_2.2_branch/avidemux/ADM_codecs'
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/malloc -I/usr/include/libxml2 -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -I.. -I../ADM_lavutil -IADM_library -I../ADM_library -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -O2 -falign-loops=16 -MT ADM_x264.o -MD -MP -MF ".deps/ADM_x264.Tpo" -c -o ADM_x264.o ADM_x264.cpp; \
then mv -f ".deps/ADM_x264.Tpo" ".deps/ADM_x264.Po"; else rm -f ".deps/ADM_x264.Tpo"; exit 1; fi
ADM_x264.cpp: In member function ‘virtual uint8_t X264EncoderCBR::init(uint32_t, uint32_t, ADM_x264Param*)’:
ADM_x264.cpp:335: error: ‘struct x264_param_t::’ has no member named ‘b_cbr’
ADM_x264.cpp: In member function ‘virtual uint8_t X264EncoderPass2::init(uint32_t, uint32_t, ADM_x264Param*)’:
ADM_x264.cpp:396: error: ‘struct x264_param_t::’ has no member named ‘b_cbr’
make[3]: *** [ADM_x264.o] Error 1
make[3]: Leaving directory `/home/jirik/avidemux2/2-backup/avidemux_2.2_branch/avidemux/ADM_codecs'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jirik/avidemux2/2-backup/avidemux_2.2_branch/avidemux'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jirik/avidemux2/2-backup/avidemux_2.2_branch'
make: *** [all] Error 2(/code)
-
Problém je vyřešen: chyba byla v tom, že svn verze avidemuxu se neměla ráda s nainstalovanou verzí libx264-dev.
Nicméně, pro ty, kteří si podobně jako já v dapperovi zvykli na avidemux 2.2 a 2.3 ze svn a v eftovi tápou jak jej nainstalovat tak, aby byl plně funkční (zejména co se týče podpory x264), připojuji toto "mini-howto" :)
1) povolit "universe" repozitáře
2) nainstalovat balíky potřebné ke kompilaci:
sudo apt-get install apt-get install automake1.9 g++ gcc liba52-0.7.4 liba52-0.7.4-dev libfaac-dev libfaad2-dev libstdc++6 libgtk2.0-dev libglib2.0-dev libsdl-console-dev libxv-dev pkg-config liblame-dev libmad0-dev libvorbis-dev libxml2-dev libxvidcore4-dev libx264-dev subversion mozilla-dev
3) namluvit kompilátoru, že je nainstalován balík spidermonkey /který dělá kvůli závislostem dost velké problémy - proto ta mozilla-dev v bodu 2)/:
sudo ln -s /usr/lib/firefox/libmozjs.so /usr/lib
4) stáhnout svn verzi avidemuxu:
svn co svn://svn.berlios.de/avidemux/branches/avidemux_2.3_branch/
(nebo svn co svn://svn.berlios.de/avidemux/branches/avidemux_2.2_branch/)
5) připravit kompilaci:
cd avidemux_2.3_branch
make -f Makefile.dist
6) zkompilovat:
./configure --with-jsapi-include=/usr/include/mozilla/js --with-newfaad
make
7) nyní se v adresáři ~/avidemux_2.3_branch/avidemux nachází spustitelný soubor avidemux2 - cíl tohoto mininávodu.
Pro ty, kteří jej chtějí mít v systému je make install.
-----
Tento mininávod vychází z:
http://www.ubuntuforums.org/showthread.php?t=203898&highlight=compile+avidemux
http://www.avidemux.org/wki/index.php?title=Compiling_Avidemux
http://www.avidemux.org/pun/
a vlastních zkušeností
Vpřípadě problémů doporučuji hlavně anglickou diskusi pod návodem na ubuntuforums.org, kde je poněkud drastický ale funkční (ověřeno) postup jak nainstalovat knihovny, které kvůli závislostem v edgym nainstalovat běžně nejdou.
-
Ja jsem zkousel zkompilovat avidemux_2.3_branch pod kubuntu 6.10 edgy a nedari se mi to. Nainstaloval jsem mozilla-dev a soubor jsapi jsem nasel jak bylo uvedeno v navodu ve slozce /usr/include/mozilla/js, ale i presto v zaveru kompilace to napise
configure: WARNING: I did not find a working copy of jsapi.h and the associated library.
configure: WARNING: <1>- Not reachable : Make sure you have spidermonkey installed
configure: WARNING: Then use --with-jsapi-include=/path/to/jsapi.h/
configure: WARNING: <2>- Make sure the library is in your LD_LIBRARY_PATH and/or LDFLAGS
configure: WARNING: <3>- Make sure multithreading is enabled in your spidermonkey
configure: WARNING: The ones from mozilla-dev or firefox-dev are ok
configure: error: *** Working SPIDERMONKEY javascript engine not found !***
petr@petr-laptop:~/avidemux_2.3_branch$
a tim to bohuzel konci.
Jsem linuxovy zacatecnik a tak napr. vubec nevim co je LD_LIBRARY_PATH and/or LDFLAGS.
Mozna to je ta chyba. Dekuji za kazdou radu.
Petr
=Quis custodiet ipsos custodes=
-
Můžeš zkusit postup dle stránek
http://www.avidemux.org/wki/index.php?title=Compiling_Avidemux#Edgy_Eft
(tam popsanou "metodu B") - to sem ale nezkoušel, protože mi fungovala "metoda A", jejíž obdobou je můj dřívější příspěvek,
nebo opravdu drastický postup spočívající v tom, že nejdřív kvůli instalaci knihovyny libnspr4dev odinstaluješ půlku gnome (to by ale v Kubuntu nemuselo být tak adrenalinové jako v obyč ubuntu) a pak ho zase nainstaluješ zpět... - postup z diskuse na adrese:
http://www.ubuntuforums.org/showthread.php?t=203898&page=2&highlight=compile+avidemux
konkrétně příspěvek z diskuze, podle kterého sem postupoval při "prvním pokusu":
Anyway, just install libnspr4-dev - it will remove awful lot of important stuff but it does not matter, everything should work until you restart (but I do recommend closing gnome-terminal either) and before that you will install it back.
Than install ibmozjs-dev libsmjs-dev and configure avidemux with ./configure --with-jsapi-include=/usr/include/smjs --with-newfaad (I do not know what newfaad is exactly for, but it is on avidedemux wiki, so I do not question it) and make and install it as usual (it should work, I have not tried it yet because I need to get support for 264 first). Then install evrything back (and remove installed packages).
Při tomto postupu vřele doporučuju zkopírovat si názvy odstraňovaných balíčků do nějakého texťáku a uložit.
Jeho nevýhodou ale je, že - alespoň u mě - tento postup vedl k avidemuxu bez x264, tedy bez hlavní výhody (pro mě) oproti systémovému 2.1 ...
Hodně štěstí :)