java.lang.UnsatisfiedLinkError: no xuggle-xuggler in java.library.path

474 views
Skip to first unread message

worldo...@googlemail.com

unread,
Mar 3, 2009, 8:41:43 AM3/3/09
to xuggler-users
I've seen the FAQ entry about this - but i'm not sure how to ensure
that i'm using the xuggler correctly within Red5.

If i have a webapp and i want to use xuggler's capabilities within it:

which xuggle jar files do i need?
where do i put the xuggle jar files?
do i need to create a war file?

any help here would be much appreciate - i've installed the correct
'bit' version on my mac - and can run the simple test example. But
when running in Red5 i always get the unsatisfied link error, despite
trying all sorts of combinations of jar files and locations.... so
wondered if i could get some help from the source.

T

Art Clarke

unread,
Mar 3, 2009, 9:40:32 AM3/3/09
to xuggle...@googlegroups.com
Hi Trevor,

It likely means you don't have DYLD_LIBRARY_PATH set correctly when running Red5.  That variable needs to point to where the .dylib file (the native component) for Xuggler resides.

- Art
--
http://www.xuggle.com/
xu‧ggle (zŭ' gl) v. To freely encode, decode, and experience audio and video.

Use Xuggle to get the power of FFMPEG in Java.

Trevor Burton

unread,
Mar 3, 2009, 10:47:51 AM3/3/09
to xuggle...@googlegroups.com
ah, ok, this is probably a result of my mac newbness :)

other than this everything has been pretty smooth - refreshing to watch several minutes of tests all passing! Not at all what i'm used to :(

thanks Art

T
--
Trevor Burton
http://www.flashmonkey.org
http://www.paperworld3d.com
http://www.infrared5.com

Art Clarke

unread,
Mar 3, 2009, 11:01:23 AM3/3/09
to xuggle...@googlegroups.com
No problem.  let us know if you run into any other issues.

FYI on Mac's you need to pass in a special flag if you're running 32-bit Java 1.5 (as opposed to 64-bit Java 1.6).  If that happens, do:
ant clobber
ant -Dbuild.m64=no run-tests
ant install

to build a 32-bit version of xuggler.  This only applies to Mac's.

- Art

Trevor Burton

unread,
Mar 3, 2009, 11:03:01 AM3/3/09
to xuggle...@googlegroups.com
Yeah, i caught that one - and that's how i've been building it so far....

T

6pixel

unread,
Apr 16, 2009, 12:08:36 PM4/16/09
to xuggler-users
Oh, I feel like one of those Hi I'm a Mac, and I'm a PC commercials
right now...

Xuggler 2.0, Red5 0.8RC3, checked out SVN examples about a week ago.

[INFO] [Launcher:/videotranscoder]
org.springframework.beans.factory.support.DefaultListableBeanFactory -
Destroying singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@d522dd:
defining beans [placeholderConfig,web.context,web.scope,web.handler];
parent:
org.springframework.beans.factory.support.DefaultListableBeanFactory@1be4050
Exception in thread "Launcher:/videotranscoder"
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.scope' defined in ServletContext resource
[/WEB-INF/red5-web.xml]: Cannot resolve reference to bean
'web.handler' while setting bean property 'handler'; nested exception
is org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.handler' defined in ServletContext
resource [/WEB-INF/red5-web.xml]: Invocation of init method failed;
nested exception is java.lang.UnsatisfiedLinkError: no xuggle-xuggler
in java.library.path

I am trying to hack Transcoder.java and swap it in place of the
videotranscoder demo for some tests. Using Xuggler 2.0 and SVN
examples from about a week ago. I remembered the FAQ and went through
it:

"Did you install the Xuggler? If not, follow the instructions here."
Yes, version 2.0. :) And rebooted of course...

"Is the environment variable XUGGLE_HOME defined and pointing to your
Xuggler install directory (usually C:\Program Files\Xuggle on Windows
or /usr/local on Linux/Mac)?"

C:\Documents and Settings\me>set XUGGLE_HOME
XUGGLE_HOME=C:\Program Files\Xuggle

"Does your PATH environment variable include %XUGGLE_HOME%\bin"

C:\Documents and Settings\me>set PATH
Path=C:\Program Files\Xuggle\bin;C:\WINDOWS\system32;C:\WINDOWS;C:
\WINDOWS\System32\Wbem;C:\Program Files\TortoiseSVN\bin;C:\Program
Files\Java\jdk1.6.0_13\bin

I'm compiling with ant/build.xml. I can deploy non-xuggle stuff to
WEBAPPS just fine.

C:\program files\Xuggle\share\java\jars\xuggle-xuggler.jar is present.
I'm stumped...

Doug

Art Clarke

unread,
Apr 16, 2009, 12:33:11 PM4/16/09
to xuggle...@googlegroups.com
This is a bug I meant to deal with last week but, um, forgot to.

The tip of tree of Red5 assumes Xuggler 1.x is installed, not Xuggler
2.x and the two releases are not binary compatible. As a work around
(assuming Windows and both vars are defined):

copy %XUGGLE_HOME%\share\java\jars\xuggle-xuggler.jar %RED5_HOME%\lib

or (Linux/Mac):

cp $XUGGLE_HOME/share/java/jars/xuggle-xuggler.jar $RED5_HOME/lib

At some point I'll check in a change to Red5 that brings is up to Xuggler 2.0

- Art

6pixel

unread,
Apr 16, 2009, 1:09:51 PM4/16/09
to xuggler-users
Unfortunately, still no joy (rebooted too). Same error.

Is there any other information that would help narrow the problem?
> --http://www.xuggle.com/

Art Clarke

unread,
Apr 16, 2009, 1:26:53 PM4/16/09
to xuggle...@googlegroups.com
Can you paste the errors from Red5 you're seeing now. If Red5 is
actually loading Xuggler 2.0 then the error message you had before
will look different. If it's the same, then you didn't copy
xuggle-xuggler.jar to the right location.

- Art
--

6pixel

unread,
Apr 16, 2009, 1:56:04 PM4/16/09
to xuggler-users
Sure, error is the same I think, pasted at end for sanity check.

C:\Program Files\Xuggle>echo %XUGGLE_HOME%
C:\Program Files\Xuggle

C:\Program Files\Xuggle>echo %RED5_HOME%
C:\red5-0.8.RC3-build-hudson-red5_jdk5_stable-85

C:\Program Files\Xuggle>copy %XUGGLE_HOME%\share\java\jars\xuggle-
xuggler.jar %RED5_HOME%\lib
The system cannot find the file specified.

(bizarre.... so I copied the JAR to my Red5 install manually through
windows explorer, then after no joy through the command prompt)

C:\Program Files\Xuggle>copy "C:\program files\Xuggle\share\java\jars
\xuggle-xuggler.jar" "C:\red5-0.8.RC3-build-hudson-
red5_jdk5_stable-85\lib"
Overwrite C:\red5-0.8.RC3-build-hudson-red5_jdk5_stable-85\lib\xuggle-
xuggler.jar? (Yes/No/All): y
1 file(s) copied.

C:\red5-0.8.RC3-build-hudson-red5_jdk5_stable-85\lib>dir xuggle*.*

03/23/2009 01:54 AM 160,903 xuggle-xuggler-1.22.237.jar
04/02/2009 01:12 AM 196,050 xuggle-xuggler.jar
2 File(s) 356,953 bytes
0 Dir(s) 137,633,210,368 bytes free


[INFO] [Launcher:/videotranscoder]
org.springframework.beans.factory.support.DefaultListableBeanFactory -
Destroying singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@1f85b60:
defining beans [placeholderConfig,web.context,web.scope,web.handler];
parent:
org.springframework.beans.factory.support.DefaultListableBeanFactory@15978e7
Exception in thread "Launcher:/videotranscoder"
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.scope' defined in ServletContext resource
[/WEB-INF/red5-web.xml]: Cannot resolve reference to bean
'web.handler' while setting bean property 'handler'; nested exception
is org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.handler' defined in ServletContext
resource [/WEB-INF/red5-web.xml]: Invocation of init method failed;
nested exception is java.lang.UnsatisfiedLinkError: no xuggle-xuggler
in java.library.path

I wonder what I'm missing.
Doug

Art Clarke

unread,
Apr 16, 2009, 2:04:43 PM4/16/09
to xuggle...@googlegroups.com
> C:\red5-0.8.RC3-build-hudson-red5_jdk5_stable-85\lib>dir xuggle*.*
>
> 03/23/2009  01:54 AM           160,903 xuggle-xuggler-1.22.237.jar
> 04/02/2009  01:12 AM           196,050 xuggle-xuggler.jar
>               2 File(s)        356,953 bytes
>               0 Dir(s)  137,633,210,368 bytes free
>
Remove the xuggle-xuggler-1.22.237.jar file

By the way, it appears that Red5 moved to a new version of MINA last
week, which also appears to have broken our Red5 demos. I'll take a
look at it over the weekend.

- Art

--

6pixel

unread,
Apr 16, 2009, 2:31:24 PM4/16/09
to xuggler-users
Deleted it, though it didn't help.

xuggle*.* in my RED5_HOME:
\xuggle-xuggler.jar (why is this here?) (192kb)
\lib\xuggle-xuggler.jar (192kb)
\webapps\videotranscoder\WEB-INF\lib\xuggle-utils.jar
\webapps\videotranscoder\WEB-INF\lib\xuggle-xuggler-red5.jar

Would there be anything to gain by uninstalling/removing Red5,
Xuggler, wiping out my copy of SVN, then reinstalling/rechecking-out
all?

Sounds like the MINA problem would just be a new hurdle to face...
BUT... at least it'd possibly be finding Xuggler 2.0 before running
into that problem, right?

This machine is pretty clean-loaded, but at one point it did have
Xuggler 1 on it, removed it before installing 2.

Doug


On Apr 16, 2:04 pm, Art Clarke <acla...@xuggle.com> wrote:
> > C:\red5-0.8.RC3-build-hudson-red5_jdk5_stable-85\lib>dir xuggle*.*
>
> > 03/23/2009  01:54 AM           160,903 xuggle-xuggler-1.22.237.jar
> > 04/02/2009  01:12 AM           196,050 xuggle-xuggler.jar
> >               2 File(s)        356,953 bytes
> >               0 Dir(s)  137,633,210,368 bytes free
>
> Remove the xuggle-xuggler-1.22.237.jar file
>
> By the way, it appears that Red5 moved to a new version of MINA last
> week, which also appears to have broken our Red5 demos.  I'll take a
> look at it over the weekend.
>
> - Art
>
> --http://www.xuggle.com/

Art Clarke

unread,
Apr 16, 2009, 2:45:06 PM4/16/09
to xuggle...@googlegroups.com
And after you deleted it, do you STILL get the same error text. If
different, paste the error here. The error text message for that
error changed between 1.x and 2.0 so I'm surprised to see the old
message.

If you still have the old text, then somehow it appears that Red5 is
getting the wrong jar file.

- Art
--

6pixel

unread,
Apr 16, 2009, 4:01:05 PM4/16/09
to xuggler-users
Art,

Yes, it was the same error exactly (pasted at end for sanity check). I
think I remember another post where a user actually reloaded their
computer and it worked. While I can't go to that extreme, I did wipe
out my Red5 installation, uninstalled Xugger 2, rebooted, reextracted
Red5 and reinstalled Xuggler 2, rebooted, deleted my local copy
(xuggle-xuggler-red5) and redownloaded from SVN (HEAD, Revision 362),
then ran the ant build that installs the apps to RED5_HOME (install-
java target).

This time around I notice I can't seem to build.
BUILD FAILED
C:\eclipse-jee-ganymede-sr2\workspace\xuggle-xuggler-red5\mk\buildtools
\buildhelper.xml:278: The following error occurred while executing
this line:
C:\eclipse-jee-ganymede-sr2\workspace\xuggle-xuggler-red5\mk\buildtools
\buildhelper.xml:1057: Execute failed: java.io.IOException: Cannot run
program "sh" (in directory "C:\Program Files\Xuggle"): CreateProcess
error=2, The system cannot find the file specified

I'm not on 'nix, so not finding sh is understandable - but this time
around it's a fatal error, before it continued to compile. Is this a
potential source of the problem?

Before redoing everything, I noticed the ant build updated 3 jars in
my %XUGGLE_HOME%\share\java\jars: xuggle-xuggler-red5.jar, xuggle-
utils.jar, jetm.jar. I am assuming this is normal, non-harmful
behavior (ie, no version conflicts?).

Of interest: audiotranscoder works.

Thanks for your help and patience, it means a lot.
Doug

-----------------
[INFO] [Launcher:/videotranscoder]
org.springframework.beans.factory.support.DefaultListableBeanFactory -
Destroying singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@15d6184:
defining beans [placeholderConfig,web.context,web.scope,web.handler];
parent:
org.springframework.beans.factory.support.DefaultListableBeanFactory@67211b
Exception in thread "Launcher:/videotranscoder"
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.scope' defined in ServletContext resource
[/WEB-INF/red5-web.xml]: Cannot resolve reference to bean
'web.handler' while setting bean property 'handler'; nested exception
is org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'web.handler' defined in ServletContext
resource [/WEB-INF/red5-web.xml]: Invocation of init method failed;
nested exception is java.lang.UnsatisfiedLinkError: no xuggle-xuggler
in java.library.path

Art Clarke

unread,
Apr 16, 2009, 4:09:20 PM4/16/09
to xuggle...@googlegroups.com
I just checked in a attempted workaround to the build problems for the
xuggle-xuggler-red5 stuff, you can try that. Although bear in mind
given the other reports coming in today the Red5 demos aren't working
with the latest Red5 code because mina ByteBuffers are no longer
available in Red5.

I'll try to fix this weekend but no promises folks.

By the way, normally I'd suggest using the installer that comes with
Red5 to install the audio and video demos.

- Art
--

6pixel

unread,
Apr 16, 2009, 4:38:17 PM4/16/09
to xuggler-users
Thanks Art. I can wait until you have a chance to go over things.
Keeping up with the FFMPEG and Red5 teams' changes seems very
challenging right now.

By the way, do you have a paid consultation service available?

Doug
Reply all
Reply to author
Forward
0 new messages