Results 1 to 11 of 11

Thread: HOW-TO: Compile/run Fuppes media server on WL700ge

  1. #1

    HOW-TO: Compile/run Fuppes media server on WL700ge

    My first How-To, so if its not right, just nag me until I change it

    So why fuppes? One of the attractive uses of the Wl700ge is as a media server, using my newly acquired Xbox360 as the player. Now, there's a bunch of UPnP media servers out there which will play nice with the Asus box, but principally there are 3 key players:

    1) TwonkyMedia: haven't tried, but everyone who uses it says its good. Search these forums for instructions on getting it running, but it costs money. Not much money, but that's still more than I can afford right now.

    2) Ushare: I've tried this, there's an optware package available, its easy to configure, and it worked real nice with my Xbox360. Free. However, it presents all my music as one big huge file list. I want it broken down into albums, even genres/artists etc. According to the author of ushare, it's because it doesn't support metadata extraction, and he says there's no plans to do so.

    3) Fuppes. The new kid on the block, there's an optware package available, and it has xbox360 support builtin. Further, it has virtual folder creation support built in, meaning it should be able to organise the files according to album/artist/genre etc as desired.

    For me, its a no-brainer. Use Fuppes. And then the problems begin...the optware package in the normal ipkg place is old (0.7.1) and is pre-box360 support, and pre-virtual folder support. So I need to compile my own version, and having never done so before on the asus, I thought this would serve as a useful tutorial for others - and hopefully you can return the favour by fixing some of my outstanding issues (see later).

    (I'm assuming you're running KFurge custom firmware 1.0.4.6)

    Firstly, get the compiler and support:

    Code:
    ipkg install -force-overwrite buildroot
    ipkg install -force-overwrite optware-dev
    ipkg install mktemp
    Then, get the latest Fuppes source code (I used SVN586) from subversion repository. I used subversion on the PC to get it, and then copied the files onto my Asus, but I noticed there is an SVN optware package ("ipkg install svn" ?) if you wanted to go that route.

    Code:
    cd /shares/MYVOLUME1/MYSHARE1
    mkdir fuppes
    svn co http://fuppes-svn.ulrich-voelkel.de/trunk fuppes
    For me, this gets the code into my default share, so I can access from Windows machine. Before configuring/compiling, go this 'fuppes' source directory, and change all instances within the files of /bin/sh to /opt/bin/bash (assuming you have bash shell installed). Then, create the config files to get ready for 'make'

    Code:
    autoreconf -vfi
    And this is where the fun starts. Chances are you'll get a bunch of 'not found' stuff on doing this. You'll need to go through many of the tools in /opt/bin and change the start lines from (#!/bin/sh to #!/opt/bin/bash) - these will be e.g. 'autoreconf' 'libtool' etc etc - I'd list exactly which they are but I've changed them now, so don't really want to go back to fresh machine at this point! (maybe if you follow this, you could list for others). Eventually it will succeed. I had a bunch of warnings such as something to do with split files or some such, but these never bothered me. You might need to repeat the process until its all done with no errors.

    Then, it will have created config scripts etc - go through any new files in the fuppes directory and again change these for /bin/sh instances to /opt/bin/bash. When ready do:

    Code:
    ./configure --prefix=/opt --disable-transcoding
    (This is for building without transcoding: don't fancy the idea of runing transcoding on our humble asus - if anyone else gets it working, and you'll need further tools such as ffmpeg/lame/imagemagick, then please let me know)

    This should (SHOULD) now create the Makefiles you'll need. It may also give 'not found' errors - as before, try and work out what /opt/bin tools need their shells changing to /opt/bin/bash, and list here if need be.

    Eventually you'll get a Makefile in this directory and a subsequent one in the 'src' directory. Any other files created, again change /bin/sh instances to /opt/bin/bash. In the two makefiles, you'll need to get rid of the -O2 compile flags from the CXXFLAGS lines (keep the -g and the -DISABLE_TRANSCODING though!). If you don't do this you'll get an 'internal compiler error' when compiling UPnPAction.cpp - i.e. the first file

    Now, you should be ready to go: enter the fuppes directory and do

    Code:
    make
    and after about 1hour 45mins, it'll have built you a copy of fuppes.
    Do

    Code:
    make install
    to finish up, and then you can run fuppes (or fuppesd the daemon version) - see the documentation at http://fuppes.ulrich-voelkel.de/wiki....php/Main_Page for further info on setting it up (the config file is /opt/.fuppes/fuppes.cfg and you'll want to copy the vfolder.cfg file from the fuppes dir into /opt/.fuppes).

    With a bit of luck, and enabling the xbox360 sections in both fuppes.cfg and vfolder.cfg you should be able to get the 360 to see it. Note: you need to add the <description_values> section to fuppes.cfg (see http://fuppes.ulrich-voelkel.de/wiki...osoft_Xbox_360) for the 360 to see it properly. Go to dashboard, media 'blade', do pictures/music and change source (x button). Worked for me.

    This is as far as i've got: run fuppes, rebuild the database/virtual folders, and it works: the 360 sees it, and i can see some music in the 'songs' section. But a couple of issues remain:

    1) I can't see any of my photos, or avi videos: These are all from a copy of my iPhoto library from my mac onto the shared asus drive.

    2) My music is just one big mess of various albums together - the config of the virtual folders doesn't seem right to me).

    3) I can't seem to run fuppes as a daemon, so that it starts nicely from rc.local. I'm sure this is a bit of linux trickery, but simply doing 'fuppes &' or 'fuppesd > /dev/null' didn't seem to work for me. Must be missing something - if you get it working in rc.local let me know!!

    Reading from various forums, people have got it working nicely, but I'm a bit stumped. It seems like just a configuration issue now (apart from '3' above) but i've not had success thus far. All help really appreciated right now!

    And that's it: if you try it, post comments and let me know: i'll update this 'how-to' with your experiences so hopefully we get the definitive media server for the asus box.

    ~neil

  2. #2
    Seems interesting, and thank you for riding a so detailed how-to

    Anyways, right now it seems that their are some pretty big disadvantages compared to uShare, but there is definitely potential

  3. #3
    Join Date
    Jan 2007
    Location
    The Netherlands
    Posts
    244

    Cool Why not wait?

    Hi,

    Interesting stuff! I will definitly give it a try, but I will wait for K.C.Furge's upcoming firmware, as that does away with the need of changing every #!/bin/sh to #!/opt/bin/bash.
    see:
    http://wl500g.info/showthread.php?p=78326#post78326

    My new firmware image coming out really soon solves this problem. I made an application that looks for a KCSHELL environment variable. If that environment variable is set, then calling /bin/sh executes the shell referenced by KCSHELL, normally /opt/bin/bash. If it is not set, then calling /bin/sh executes the busybox shell. This approach guarantees Asus compatibility and eliminates annoying problems like what you're experiencing.


    Marc

  4. #4
    Henrikh: ta! yes, as it stands today, its much the same as ushare (although i'd say not big disadvantages) - if I can get it config'd correctly it should be leaps and bounds further on (unless you know more about ushare than I've found: certainly the author is more geared to the ps3 he owns, and has stated that he doesn't intend to support the meta data requried for nice folder access on xbox360) - tried again last night, but still no progress. And ushare doesn't support transcoding whereas fuppes does - but as before, I'm not convinced our asus has the grunt for it!

    mumsoft: i hadn't realised that KFurge was planning that: I was going to post that very recommendation today! If that's the case, and judging by his recent comments the new firmware isn't a million miles away (less than a month Kfurge?) then probably worth waiting, although if anyone else tries and can fix the config for xbox360 then i'd REALLY appreciate it!!

  5. #5
    Quote Originally Posted by neil View Post
    Henrikh: ta! yes, as it stands today, its much the same as ushare (although i'd say not big disadvantages) - if I can get it config'd correctly it should be leaps and bounds further on (unless you know more about ushare than I've found: certainly the author is more geared to the ps3 he owns, and has stated that he doesn't intend to support the meta data requried for nice folder access on xbox360) - tried again last night, but still no progress. And ushare doesn't support transcoding whereas fuppes does - but as before, I'm not convinced our asus has the grunt for it!

    mumsoft: i hadn't realised that KFurge was planning that: I was going to post that very recommendation today! If that's the case, and judging by his recent comments the new firmware isn't a million miles away (less than a month Kfurge?) then probably worth waiting, although if anyone else tries and can fix the config for xbox360 then i'd REALLY appreciate it!!
    Well i think i was able to make my Xbox see my AVI files when i had uShare up and running, dont know about the photos.

    But i messed around with the router and right now, i'm just sharing it from my PC :0). If the problems with fuppes can be sorted out, it will be really nice, especially the virtual folder thing, since its pretty useless to have them all listed as one big mess, if you have more than just a couple of hundred songs

    Unfortunately, i can't even gain access to my router as it right now, and i don't bother to fix it, since Kfurges new firmware is just around the corner. But when it comes, i will definitely be giving your tutorial a try
    Last edited by Henrikh; 22-01-2008 at 17:09.

  6. #6

    Now on 1.0.7.8

    Ok, compiling fuppes under 1.0.7.8 is a bazillion times easier thanks to the KCSHELL modification in this version. once again, thanks K.C.

    I now have files organised according to albums/genre/artist etc - which is a big step on from ushare for me (>100 albums = 1 big mess of files under ushare which isn't practical for me). still no photos/videos - but i know why at least the photos don't work (more later).

    so, to compile fuppes, you'll need to install the following ipkgs

    Code:
    ipkg install optware-devel
    ipkg install buildroot
    ipkg install sqlite
    ipkg install pcre
    ipkg install ffmpeg
    ipkg install pcre
    First, you'll need taglib (google it, download source)

    compile by doing

    Code:
    autoreconf -vfi
    ./configure --prefix=/opt
    make
    make install
    this is necessary for the 'by album/artist' vfolder searches. i seem to remember getting an error in the 'make install' part, but by this stage its already created the libtaglib files necessary and put them in the right place, so its probably ok.

    then, get latest fuppes (i use 586, but a 587 was released last night), and compile as in the original post i made. note: you don't need to do any of the pesky changing /bin/sh to /opt/bin/bash now! woohoo!

    ...but you still need to drop the -O2 flag as before from the two makefiles.

    then make/make install as before and all shoudl work.

    NOTE: does anyone know how to cross-compiling for the wl700ge ? ie it would be loads quicker to compile on a windows machine (running cygwin say?) or a linux box (although i don't have access to one right now)

    This gets me a working, semi-organised music folder udner fuppes. Why no video? no idea - working on that, but i believe its down to libavformat issues - will try and compile latest/greatest and try again.

    photos? well, it seems that fuppes needs to use imagemagick to extract the meta-data from the jpgs for resolution etc - the 360 needs these to work correctly. the imagemagick package under optware repository doesn't seem to cut-it (fuppes needs ImageMagick++) and i've no success with compiling it from source yet (hence why i need cross-compiling option, cos its easier/quciker to work with)

    hope this helps - if anyone else is interested in working with me on getting fully-working fuppes up and running under the wl700ge i'd appreciate it: i still think its the best non-twonky route for media serving to the xbox360 available at present

  7. #7
    So i finally had some spare time to play around with this thing . Unfortunately, it didn't went as smooth as i had hoped for.

    What version of taglib did you compile? The autoreconf and configure seems to work (all through i did encounter some of the "split value" errors while doing autoreconf) but when i run make i encounter the following error:

    Code:
    tstring.cpp: In member function 'int TagLib::String::toInt() const':
    tstring.cpp:436: internal compiler error: Segmentation fault
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See <URL:http://gcc.gnu.org/bugs.html> for instructions.
    make[3]: *** [tstring.lo] Error 1
    make[3]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/taglib/toolkit'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/taglib'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5'
    make: *** [all] Error 2
    Did you encounter this error?

    *Update*

    So far so good. The problem was the O2 flag in the CXXFLAGS part of the makefiles. Now the "make" part completes without error, but make install gives the following error:

    Code:
    make[3]: Entering directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    test -z "/opt/lib" || /opt/bin/mkdir -p "/opt/lib"
     /bin/sh ../../libtool --silent --mode=install /opt/bin/install -c -p  'libtag_c.la' '/opt/lib/libtag_c.la'
    libtool: install: warning: relinking `libtag_c.la'
    /opt/bin/ld: cannot find -ltag
    collect2: ld returned 1 exit status
    libtool: install: error: relink `libtag_c.la' with the above command before installing it
    make[3]: *** [install-libLTLIBRARIES] Error 1
    make[3]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    make[2]: *** [install-am] Error 2
    make[2]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    make[1]: *** [install-recursive] Error 1
    make[1]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings'
    make: *** [install-recursive] Error 1
    Last edited by Henrikh; 30-03-2008 at 11:11.

  8. #8

    cannot install fuppes

    Hai

    I am using the recent version 1.9.2.7-9 of Oleg's optware on my WL-500gx (deluxe).

    I can easily install fuppes using <ipkg install fuppes>. However when I execute the command or scriptfile <fuppes> I get the error message

    "[ContentDatabase] create database at Fri May 23 14:36:17 2008
    terminate called after throwing an instance of 'EException'
    what(): 10EException"

    I have the file <fuppes.cfg> and <fuppes.db> in root/.fuppes, however no process Fuppes is not part of my process list (ps). I treid several times but it does not seem to help

    Can somebody help please?

  9. #9

    /opt/bin/ld: cannot find -ltag

    Quote Originally Posted by Henrikh View Post
    So i finally had some spare time to play around with this thing . Unfortunately, it didn't went as smooth as i had hoped for.

    What version of taglib did you compile? The autoreconf and configure seems to work (all through i did encounter some of the "split value" errors while doing autoreconf) but when i run make i encounter the following error:

    Code:
    tstring.cpp: In member function 'int TagLib::String::toInt() const':
    tstring.cpp:436: internal compiler error: Segmentation fault
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See <URL:http://gcc.gnu.org/bugs.html> for instructions.
    make[3]: *** [tstring.lo] Error 1
    make[3]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/taglib/toolkit'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/taglib'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5'
    make: *** [all] Error 2
    Did you encounter this error?

    *Update*

    So far so good. The problem was the O2 flag in the CXXFLAGS part of the makefiles. Now the "make" part completes without error, but make install gives the following error:

    Code:
    make[3]: Entering directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    test -z "/opt/lib" || /opt/bin/mkdir -p "/opt/lib"
     /bin/sh ../../libtool --silent --mode=install /opt/bin/install -c -p  'libtag_c.la' '/opt/lib/libtag_c.la'
    libtool: install: warning: relinking `libtag_c.la'
    /opt/bin/ld: cannot find -ltag
    collect2: ld returned 1 exit status
    libtool: install: error: relink `libtag_c.la' with the above command before installing it
    make[3]: *** [install-libLTLIBRARIES] Error 1
    make[3]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    make[2]: *** [install-am] Error 2
    make[2]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings/c'
    make[1]: *** [install-recursive] Error 1
    make[1]: Leaving directory `/shares/MYVOLUME1/taglib/taglib-1.5/bindings'
    make: *** [install-recursive] Error 1
    I have the same problem with "/opt/bin/ld: cannot find -ltag".
    Does anyone know how to solve this?

  10. #10
    Just installed fuppes SVN-578-1 via "ipkg install fuppes". And if I state specific paths at the rc.local it also runs a separate process(es):

    fuppes --config-file /opt/etc/fuppes/fuppes.cfg --database-file /opt/etc/fuppes/fuppes.db --vfolder-config-file /opt/etc/fuppes/vfolder.cfg 2>&1 >/dev/null &

    Unfortunately it seems that the downloaded fuppes does not evaluate the ID3-tags of my MP3s. Looking at the web status screen it tells me "build options: taglib false". Wonderful.

    So is anybody out there owning a ipkg of fuppes built including the taglib option and be so kind to make it publicly available?

  11. #11
    Quote Originally Posted by gmar234 View Post
    Just installed fuppes SVN-578-1 via "ipkg install fuppes". And if I state specific paths at the rc.local it also runs a separate process(es):

    fuppes --config-file /opt/etc/fuppes/fuppes.cfg --database-file /opt/etc/fuppes/fuppes.db --vfolder-config-file /opt/etc/fuppes/vfolder.cfg 2>&1 >/dev/null &

    Unfortunately it seems that the downloaded fuppes does not evaluate the ID3-tags of my MP3s. Looking at the web status screen it tells me "build options: taglib false". Wonderful.

    So is anybody out there owning a ipkg of fuppes built including the taglib option and be so kind to make it publicly available?
    Did it work? I did install SVN-578-1 as well with "ipkg install fuppes" using the nslu2 repository, but it keeps crashing. I tried everything. Got the .cfg files as well from a web site just in case.

    I have an ASUS WL500GPv2 with Koppel (Oleg) fw 1.9.2.7-10-USB-1.70

Similar Threads

  1. Twonky Media Server... Video auf Dbox2?
    By R3N in forum German Discussion - Deutsch (DE)
    Replies: 4
    Last Post: 11-11-2007, 09:46
  2. Replies: 8
    Last Post: 02-09-2007, 12:19
  3. Alternate Media Server software...
    By medsource in forum WL-700g Q&A
    Replies: 2
    Last Post: 28-06-2007, 01:11
  4. Replies: 1
    Last Post: 03-04-2007, 14:04
  5. twonky media server, network drive with oleg firmware
    By black_bottom in forum WL-HDD Q&A
    Replies: 3
    Last Post: 22-03-2006, 08:15

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •