LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Problems compiling MPlayerplug-in 3.25 (https://www.linuxquestions.org/questions/linux-software-2/problems-compiling-mplayerplug-in-3-25-a-470901/)

Aranel 08-04-2006 08:17 PM

Problems compiling MPlayerplug-in 3.25
 
'Sup? I've been using Linux for a couple months now, and I've been a tad nomadic distribution-wise up until recently. I'm more or less settled on Debian 3.1 stable, and I've been working to get it up and running. Everything so far has been successful except the MPlayer plugin.

After a few Google searches, I came across three DEBs of mplayerplug-in/mozilla-mplayer. Two were for the current version, 3.25; however, both were for the unstable version of Debian, and consequently, neither worked. The third was version 2.70, and it's been working okay. But I greatly dislike the lack of a right-click menu or any control buttons along the bottom. The FC4/5 RPMs on mplayerplug-in's site, once converted with Alien, did not work at all; I just got the "Additional plugins are required..." message whenever I visited a Web site with embedded media.

So I decided to try my hand at compiling from the source. I downloaded the 1.7.8 gecko-sdk and mplayerplug-in tarballs, extracted both to my desktop, and ran the latter's configure against the former (./configure --with-gecko-sdk=/home/[name]/Desktop/gecko-sdk). This is what it returned:

Quote:

checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for a BSD-compatible install... /usr/bin/install -c
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
Using new (v1.7+) gecko-sdk
checking for pkg-config... /usr/bin/pkg-config
checking for gtk+-2.0... yes
checking GTK_CFLAGS... -DXTHREADS -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GTK_LIBS... -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking for gtk+-2.0 >= 2.4.0... yes
checking GTK_CFLAGS... -DXTHREADS -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GTK_LIBS... -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking for gthread-2.0... yes
checking GTHREAD_CFLAGS... -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GTHREAD_LIBS... -pthread -lgthread-2.0 -lglib-2.0
checking how to run the C preprocessor... gcc -E
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking X11/Xlib.h usability... yes
checking X11/Xlib.h presence... yes
checking for X11/Xlib.h... yes
checking X11/Intrinsic.h usability... no
checking X11/Intrinsic.h presence... no
checking for X11/Intrinsic.h... no
checking X11/StringDefs.h usability... no
checking X11/StringDefs.h presence... no
checking for X11/StringDefs.h... no
checking for sys/stat.h... (cached) yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for an ANSI C-conforming const... yes
checking whether time.h and sys/time.h may both be included... yes
checking for pid_t... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for unistd.h... (cached) yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for memset... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strdup... yes
checking for strncasecmp... yes
checking for strstr... yes
checking for strrchr... yes
checking for snprintf... yes
checking for mkfifo... yes
checking for dup2... yes
checking for gettimeofday... yes
checking for strerror... yes
checking for strtol... yes
checking for memmem... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking return type of signal handlers... void
checking X11/xpm.h usability... yes
checking X11/xpm.h presence... yes
checking for X11/xpm.h... yes
checking for DPMSQueryExtension in -lXdpms... no
checking for X11/extensions/dpms.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile
config.status: creating install.sh
config.status: creating config.h
In my complete lack of knowledge of compiling, that seemed to be pretty decent. It looks like it can't find three files, but I see no warnings or errors or anything. However, running make didn't go quite so well:

Quote:

g++ -c -o plugin.o -Wall -g -O2 -I/usr/X11R6/include -g -O2 -DXP_UNIX -DMOZ_X11 -I/home/[name]/Desktop/gecko-sdk -I/home/[name]/Desktop/gecko-sdk/include -Iinclude -fPIC -DXPCOM_GLUE -DMOZILLA_STRICT_API -DXTHREADS -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DGTK_ENABLED Source/plugin.cpp
In file included from Source/plugin.h:55,
from Source/plugin.cpp:37:
Source/plugin-setup.h:4:27: X11/Intrinsic.h: No such file or directory
Source/plugin-setup.h:5:28: X11/StringDefs.h: No such file or directory
In file included from Source/plugin.h:55,
from Source/plugin.cpp:37:
Source/plugin-setup.h:131: error: 'Widget' is used as a type, but is not
defined as a type.
Source/plugin-setup.h:199: error: `Widget' was not declared in this scope
Source/plugin-setup.h:199: error: parse error before `,' token
Source/plugin-setup.h:202: error: `Widget' was not declared in this scope
Source/plugin-setup.h:202: error: parse error before `,' token
In file included from Source/plugin.cpp:37:
Source/plugin.h:169: error: 'Widget' is used as a type, but is not defined as a
type.
Source/plugin.cpp: In constructor `nsPluginInstance::nsPluginInstance(NPP_t*)':
Source/plugin.cpp:199: error: `widget' undeclared (first use this function)
Source/plugin.cpp:199: error: (Each undeclared identifier is reported only once
for each function it appears in.)
make: *** [plugin.o] Error 1
I've got no clue how to interpret that. Is there a software package I'm missing? Did I make a mistake somewhere? Is there a backport DEB of mozilla-mplayer 3.25 that I could use instead? (At this point, I'd rather be able to finish this compilation and repeat it with gecko-sdk 1.6 so I could use it in Opera too. But that's more of a frivolty.:) )

I would greatly appreciate any advice!

P.S.: I'm using MPlayer 1.0pre8, the latest version, compiled with dpkg.

jlo_sandog 08-05-2006 04:47 PM

try configuring with
LDFLAGS='-L/usr/X11R6/lib'

Aranel 08-05-2006 06:56 PM

Quote:

Originally Posted by jlo_sandog
try configuring with
LDFLAGS='-L/usr/X11R6/lib'

How do you mean? Like, ./configure --with-gecko-sdk=~/Desktop/gecko-sdk LDFLAGS='-L/usr/X11R6/lib'?

</newb to compiling>

Aranel 08-05-2006 07:12 PM

Aha! Thank you so much! It worked!

...Kinda. The control panel appears, the plugin loads and all that... but nothing ever plays. It seems like it's going to after it's 25-30% done buffering, but it just flashes black once and continues buffering, whereupon it stops at 99%. When I hit play, it says "getting playlist" for a moment and stops. But I noticed that the plugin I had installed previously was behaving a bit oddly too, so I'm thinking this might be a problem with the media player itself. Still, this is kinda weird... :confused:

Edit: Another thought just struck me... Firefox 1.5 is based on Gecko 1.8, isn't it? Would compiling with gecko-sdk 1.7.8 affect that at all?

Edit again: Never mind that, it does the same thing in Mozilla 1.7.8.

Aranel 08-05-2006 08:46 PM

Sorry to triple-post, but it's working now! I recompiled and reinstalled MPlayer itself, and that seemed to do the trick. Thank you so much!


All times are GMT -5. The time now is 04:05 PM.