LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 07-06-2009, 11:29 PM   #1
Lufbery
Senior Member
 
Registered: Aug 2006
Location: Harrisburg, PA
Distribution: Slackware 64 14.2
Posts: 1,180
Blog Entries: 29

Rep: Reputation: 135Reputation: 135
src2pkg: trying to build Gnash


src2pkg wizards (and especially Gilbert): have any of you successfully built Gnash?

I've got the dependencies built and installed -- they're all available at Slackbuilds.org.

Then I try to build Gnash as root with:

Code:
src2pkg -A -C -VV -W -e='--enable-gui=kde3 --enable-renderer=opengl --enable-media=ffmpeg --with-plugins-install=system' -m='make install-plugins' gnash-0.8.5.tar.gz
Everything goes pretty well, with only a few warnings and nothing major. Then I get to this part:

Code:
Configuration has been - Successful!
   Notice - Correcting Makefile(s) with conflicting hard-coded prefix.
Compiling sources - Using: 'make install-plugins'
Compiler Messages:
make -C plugin install-plugins
make[1]: Entering directory `/tmp/gnash-0.8.5-src-1/plugin'
: # do nothing
make -C klash install-plugins
make[2]: Entering directory `/tmp/gnash-0.8.5-src-1/plugin/klash'
WARNING: Improper permissions for /usr/share/apps/klash and /usr/share/services!
You probably need to be root
Or configure with --with-kde3-prefix= set to a writable directory
make[2]: *** [test_perms] Error 1
make[2]: Leaving directory `/tmp/gnash-0.8.5-src-1/plugin/klash'
make[1]: *** [install-plugins] Error 2
make[1]: Leaving directory `/tmp/gnash-0.8.5-src-1/plugin'
make: *** [install-plugins] Error 2
ERROR! Compiling source code has failed.
This usually happens because of missing libraries, or
badly written Makefiles or configure scripts.
Sorry! No Dependency or Requirements information found.
So, any suggestions for me?

Thanks,

-Drew
 
Old 07-07-2009, 01:06 AM   #2
gnashley
Amigo developer
 
Registered: Dec 2003
Location: Germany
Distribution: Slackware
Posts: 4,928

Rep: Reputation: 612Reputation: 612Reputation: 612Reputation: 612Reputation: 612Reputation: 612
This warning:
Quote:
WARNING: Improper permissions for /usr/share/apps/klash and /usr/share/services!
You probably need to be root
Or configure with --with-kde3-prefix= set to a writable directory
comes from the sources themselves, not from src2pkg. It sounds like you need to be root in order to package this.
And, I think this is not right: "-m='make install install-plugins'". This makes it try to do the installation as part of compile_source instead of using fake_install. So, try this instead: "-i='make install-plugins'"

Hint: You can avoid having to re-compile it by resuming the build by adding the '--resume=configure_source' option.

Last edited by gnashley; 07-07-2009 at 11:38 AM. Reason: Change from 'make install-plugins' to 'make install install-plugins' and add hint.
 
Old 07-07-2009, 07:50 AM   #3
Lufbery
Senior Member
 
Registered: Aug 2006
Location: Harrisburg, PA
Distribution: Slackware 64 14.2
Posts: 1,180

Original Poster
Blog Entries: 29

Rep: Reputation: 135Reputation: 135
Quote:
Originally Posted by gnashley View Post
This warning . . . comes from the sources themselves, not from src2pkg. It sounds like you need to be root in order to package this.
Yeah. I was running as root.

Quote:
And, I think this is not right: "-m='make install-plugins'". This makes it try to do the installation as part of compile_source instead of using fake_install. So, try this instead: "-i='make install-plugins'"
Of course! This may be the problem. I'll give that a try tonight and see what happens.

For those who are interested in building Gnash, here’s what’s needed. 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:
      • yasm
  • 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)

Get Gnash from here: http://www.gnu.org/software/gnash/

The readme indicates three main options:

Quote:
…choice of renderer (graphics library used to render the SWF movie), choice(s) of GUI toolkit (gtk, kde, etc), and choice of multimedia backend (audio and video decoder).

The choices of renderer (pick one only):

--enable-renderer=opengl
--enable-renderer=cairo
or --enable-renderer=agg (default)

Gnash can use different multimedia back-ends for sound and/or video:

Gstreamer (default)
--enable-media=GST

or
Ffmpeg/SDL
--enable-media=ffmpeg

In some countries, the codecs needed to display audio and video are patented. The ffmpeg library implements these codecs. If you link them directly into Gnash, you will create an executable which contains patented software and requires a license for redistribution in those countries. If, instead, you build using gstreamer, the user installs the codecs of their choice.

Gnash supports multiple graphics toolkits, and will build multiple executables:

--enable-gui=gtk
--enable-gui=kde
or --enable-gui=gtk,kde (default)
I got an error trying to build with --enable-gui=kde. I had to choose --enable-gui=kde3.

I’ll build it again tonight and see how things work.

Regards,

-Drew

Last edited by Lufbery; 07-08-2009 at 10:18 PM.
 
Old 07-08-2009, 08:50 AM   #4
Lufbery
Senior Member
 
Registered: Aug 2006
Location: Harrisburg, PA
Distribution: Slackware 64 14.2
Posts: 1,180

Original Poster
Blog Entries: 29

Rep: Reputation: 135Reputation: 135
src2pkg: trying to build Gnash -- still having problems.

Hi all,

Has anyone else built Gnash?

I made the change that Gilbert suggested and the package seemingly created successfully. But when it was all done, the result was two libraries and a bunch of docs.

Is there an actual executable that results from the build?

Regards,
 
Old 07-08-2009, 09:11 AM   #5
H_TeXMeX_H
LQ Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301
I've built gnash. I used gtk however:

Code:
./configure --enable-renderer=opengl --enable-media=ffmpeg --enable-gui=gtk
I also had ffmpeg installed using similar options to the slackbuild.

It generates these executables:
dumpshm flvdumper gnash gprocessor gtk-gnash soldumper

You will also need to install the plugin which may work using the install option, but if not is somewhere in the gnash build directory. See here:

http://www.linuxquestions.org/questi...0/#post3525908

Last edited by H_TeXMeX_H; 07-08-2009 at 09:14 AM.
 
Old 07-08-2009, 09:17 AM   #6
Lufbery
Senior Member
 
Registered: Aug 2006
Location: Harrisburg, PA
Distribution: Slackware 64 14.2
Posts: 1,180

Original Poster
Blog Entries: 29

Rep: Reputation: 135Reputation: 135
H_TeXMeX_H,

You're a saint. I'll modify my build script and try that tonight. I'll post back with results.

Regards,
 
Old 07-08-2009, 09:57 AM   #7
H_TeXMeX_H
LQ Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301
The plugin is located at:
./plugin/.libs/libgnashplugin.so
for the source directory.
 
Old 07-09-2009, 09:04 AM   #8
Lufbery
Senior Member
 
Registered: Aug 2006
Location: Harrisburg, PA
Distribution: Slackware 64 14.2
Posts: 1,180

Original Poster
Blog Entries: 29

Rep: Reputation: 135Reputation: 135
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.
  1. Configure with your selected switches, make, and make install the main package.
  2. 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:
      • yasm
  • 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,
 
1 members found this post helpful.
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Gnash Flow: LinuxFund.org Supports RTMP for Gnash LXer Syndicated Linux News 0 12-15-2008 03:20 PM
New src2pkg release available for download -Introducing the src2pkg WIKI gnashley Slackware 11 05-06-2008 11:09 AM
how about combining src2pkg +slack.build +swaret/slaptget rkrishna Slackware 15 04-17-2008 08:07 AM
LXer: Build 'em Right, Build 'em Strong, Build 'em Linux LXer Syndicated Linux News 0 10-01-2007 09:51 PM
how to build static library .a using .so and .o for gnash saritha Fedora 0 09-11-2007 12:33 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 11:29 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration