I'm nearly there. Gilbert and H_TeXMeX_H set me in the right direction.
Gnash is a package you have to build twice. Those instructions were not quite explicit in the README, but are better explained on the wiki for the project.
Briefly, this is what it takes.
- Configure with your selected switches, make, and make install the main package.
- Then configure with again, with a slight change, make, and make install-plugins to build the plugins package with the pieces installed in the right place.
If you don't build and install the main package first, the plugins probably won't build and install correctly.
Since I want to create Slackware packages with src2pkg for this software (instead of just using ./configure && make && make install), here's what I did.
To review, here’s what’s needed to build Gnash. All of these are available from Slackbuilds.org, except for Gnash:
- gst-ffmpeg (Gstreamer ffmpeg plugin) or
- ffmpeg, which requires:
- lame
- faac
- faad2
- speex
- xvidcore
- schroedinger
- openjpeg and
- x264, which requires:
- libxml2 (included in Slackware 12.2)
- libpng (included in Slackware 12.2)
- libjpeg (included in Slackware 12.2)
- Boost
- gtkglext (if you want to use gtk)
- agg (if you want to use the AGG renderer)
There's no particular build order, but build the dependencies' dependencies first. That is, build yasm before x264, and build x264 before ffmpeg.
Get Gnash from here:
http://www.gnu.org/software/gnash/
Making the full package with src2pkg
I downloaded the gnash source into a folder. As root, within that folder, I ran the following command:
Code:
src2pkg -A -C -VV -W -e='--enable-gui=gtk --enable-renderer=opengl --enable-media=ffmpeg' -i='make install' gnash-0.8.5.tar.gz
See the src2pkg documentation to explain the switches and the gnash README to explain the --enable switches. The important thing is that I chose the GUI, renderer, and media code base
and instructed src2pkg to make a configuration "auto" script if the package successfully builds.
The package build successfully and I installed it.
Making the plugins package with src2pkg
The plugins really do seem to require a separate make and make install step after the main package has been installed.
I copied the gnash folder I created to a new folder called gnash_plugins. The contents are just the source tarball and the src2pkg .auto script.
I modified the .auto script with the correct switches to make the plugins. The important parts of the script are:
Code:
#!/bin/bash
## src2pkg script for: gnash
## Auto-generated by src2pkg-1.9.8
## src2pkg - Copyright 2005-2009 Gilbert Ashley <amigo@ibilio.org>
SOURCE_NAME='gnash-0.8.5.tar.gz'
NAME='gnash' # Use ALT_NAME to override guessed value
ALT_NAME='gnash_plugin'
VERSION='0.8.5' # Use ALT_VERSION to override guessed value
# ARCH=''
BUILD='1'
PRE_FIX='usr'
# Any extra options go here:
EXTRA_CONFIGS="--enable-gui=gtk --enable-renderer=opengl --enable-media=ffmpeg --with-plugins-install=system"
INSTALL_LINE='make install-plugins'
Please note the "ALT NAME" which makes the package name include "gnash_plugin" to differentiate it from the standard package.
Note the extra configs of "--with-plugins-install=system" which makes the plugins available to all users.
Finally, the install line is now "make install-plugins".
To build the package, I just ran:
Code:
src2pkg -C -VV -W -X
The -X switch runs the .auto script.
The package built successfully and I installed it.
My testing so far indicates that the package and plugins work.
However, they don't render very well at all. I'm going to recompile using the AGG renderer and see if it helps. It it does, then I think I can mark this thread "solved."
If anyone else tries this build method, please post your results and any tips you may have. I found something that worked that followed directions, but I'm sure there's still better ways of making these packages. Any feedback is welcome.
Regards,