Page 1 of 1

[solved] How to compile avidemux in Quirky-110?

Posted: Sun 23 May 2010, 08:52
by mdev
Hi,

I'm trying to crate a .pet for avidemux-2.5.3 in Quirky-110, and it almost compiles -- but it stops close to the end like this:

Code: Select all

[ 94%] Building CXX object avidemux/ADM_userInterfaces/ADM_render/CMakeFiles/ADM_render_cli.dir/GUI_xvRender.cpp.o
[ 94%] Building CXX object avidemux/ADM_userInterfaces/ADM_render/CMakeFiles/ADM_render_gtk.dir/GUI_xvRender.cpp.o
Linking CXX shared library libADM_render_cli.so
/usr/src/avidemux_2.5.3/avidemux/ADM_userInterfaces/ADM_render/GUI_xvRender.cpp: In function 'uint8_t GUI_XvInit(GUI_WindowInfo*, uint32_t, uint32_t)':
/usr/src/avidemux_2.5.3/avidemux/ADM_userInterfaces/ADM_render/GUI_xvRender.cpp:281: warning: deprecated conversion from string constant to 'char*'
[ 94%] Built target ADM_render_cli
[ 94%] Building CXX object avidemux/ADM_UIs/ADM_CLI/src/CMakeFiles/ADM_UICli.dir/DIA_flyDialogCli.cpp.o
Linking CXX shared library libADM_render_gtk.so
/usr/lib/gcc/i486-t2-linux-gnu/4.3.4/../../../../i486-t2-linux-gnu/bin/ld: cannot find -lX11
collect2: ld returned 1 exit status
make[2]: *** [avidemux/ADM_userInterfaces/ADM_render/libADM_render_gtk.so] Error 1
make[1]: *** [avidemux/ADM_userInterfaces/ADM_render/CMakeFiles/ADM_render_gtk.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 95%] Building CXX object avidemux/ADM_UIs/ADM_CLI/src/CMakeFiles/ADM_UICli.dir/DIA_none.cpp.o
Linking CXX shared library libADM_UICli.so
[ 95%] Built target ADM_UICli
make: *** [all] Error 2
*** fail make_main ***

Does anyone have a hint how to solve this? Is it because it "cannot find -lX11"? But the X11 libs are in the LD_LIBRARY_PATH, so what can I do?

Posted: Sun 23 May 2010, 10:26
by muggins
Do you have /usr/X11R7/lib/libX11.so? If not, try making a symlink for it. If you do, try symlinking it to /usr/lib, as there may be some source file, or makefile, looking for it in /usr/lib. I've had the same prob many times & usually resolve it as above.

Posted: Sun 23 May 2010, 12:15
by mdev
Thanks a lot muggins! This did the trick, I only had to create the symlinks /usr/lib/{libX11.so,libXext.so}

Next problem is that "new2dir make install" only creates an empty avidemux_2.5.3-i486 directory ... the application installs fine, but I cannot create a .pet so far...

Posted: Mon 24 May 2010, 13:13
by 01micko
Try instead of new2dir this:

Code: Select all

make install DESTDIR=/some-directory
You will then need to trim the fat and strip the bins manually.

Cheers

Posted: Mon 24 May 2010, 20:47
by mdev
Thank you 01micko! I should have thought of it myself, but I was too busy getting to know the puppy-specific packaging tools... Anyway, setting the DESTDIR (or the prefix) works like a charm!