IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
aoTuV on Debian
klonuo
post Jul 19 2011, 23:32
Post #1





Group: Members
Posts: 258
Joined: 29-April 10
Member No.: 80274



I got nero, and lame setup and now I want aoTuV

Googling I found that RareWares has Debian repository, but unfortunately this now probably serves as historic archive, no longer maintained for some reasons, so nothing there

I downloaded latest aoTuV src and build those libraries

What to do now?

I then downloaded vorbis-tools 1.4.0 but just can't see how to compile oggenc with auTuV libraries (/usr/local/lib/) instead default ones (those that come with Debian in /usr/lib/)

?

This post has been edited by klonuo: Jul 20 2011, 00:02
Go to the top of the page
+Quote Post
Raiden
post Jul 19 2011, 23:48
Post #2





Group: Developer
Posts: 224
Joined: 14-September 04
Member No.: 17002



The aoTuV libraries can be used as a drop in replacement for the official ones.
The oggenc binary is dynamically linked against libvorbis, so you should be able to do something like this:

CODE
LD_LIBRARY_PATH=/path/to/aoTuv/libraries oggenc

Try ogginfo on the encoded files. It should say "aoTuv" somewhere.
Go to the top of the page
+Quote Post
klonuo
post Jul 20 2011, 00:02
Post #3





Group: Members
Posts: 258
Joined: 29-April 10
Member No.: 80274



Excellent!
Thanks for the tip smile.gif
Go to the top of the page
+Quote Post
hhaamu
post Aug 16 2011, 14:21
Post #4





Group: Members
Posts: 4
Joined: 19-September 09
Member No.: 73313



I wrote this script to automate creating a static oggenc build. [1] I call it "mkoggenc.sh".

You are supposed to unpack the aoTuV and vorbis-tools tarballs, and run it like this: "./mkoggenc.sh aotuv-b6.02_20110227 vorbis-tools-1.4.0" (the directories they unpacked to). It worked for me at least on aoTuV 6.02 and vorbis-tools 1.4.0, on Debian Squeeze.

CODE
#!/bin/sh

set -e

# a directory containing vorbis lib (aotuv) source code
# and vorbis-tools source code
LIB=$1
TOOLS=$2
BASE=`pwd`

LIB_FULL=$BASE/$LIB

if [ "x$LIB" = "x" ] || [ "x$TOOLS" = "x" ]; then
        echo "syntax: $0 <aotuv-dir> <vorbis-tools-dir>"
fi

# aotuv
cd $LIB
sh configure
make

# vorbis-tools
cd $BASE/$TOOLS
./configure \
        --with-vorbis-libraries=$LIB_FULL/lib/.libs/ \
        --with-vorbis-includes=$LIB_FULL/include/ \
        --disable-shared \
        --enable-static

sed -i 's/^LDFLAGS =/LDFLAGS = -static /' oggenc/Makefile

make

if [ -x oggenc/oggenc ]; then
        echo "Your shiny new oggenc is located at:"
        echo $BASE/$TOOLS/oggenc/oggenc
fi


I notice it breaks if there's any whitespace in the directory path. Ah well.

[1] It's not completely static -- but at least the aoTuV library is linked to statically, which should be enough. And you do need the relevant dev packages installed, e.g. to compile in FLAC support. "apt-get build-dep libvorbis vorbis-tools" should do it.
Go to the top of the page
+Quote Post
joseghast
post Oct 7 2013, 20:56
Post #5





Group: Members
Posts: 1
Joined: 2-October 12
Member No.: 103577



I've just found this thread after compiling the AotuV b6.03 for my old ibook with new debian installed. After installing the AotuV version of libvorbis on /usr/local I had the same problem: the old oggenc would use the libraries supplied by the debian libvorbis package (on /usr/lib). Googling I just found this page (http://www.cyberciti.biz/faq/linux-setting...g-library-path/) which explains how to specify the libraries you want to use with oggenc.

Assuming you've installed the libraries on /usr/local you have to:

1. Create and edit the file /etc/ldso.conf/oggenc.conf:
# nano /etc/ld.so.conf.d/oggenc.conf

2. Write in the file the path to the libraries:
/usr/local/lib

3. Activate the library path:
# dconfig

And now it should work.

This post has been edited by joseghast: Oct 7 2013, 20:58
Go to the top of the page
+Quote Post
lithopsian
post Feb 27 2014, 21:43
Post #6





Group: Members
Posts: 50
Joined: 27-February 14
Member No.: 114718



If you have two libraries with the same name then the path is evaluated in a series of steps. You can override the whole lot by specifying the preffered order in LD_LIBRARY_PATH, but that's best kept for testing.

After that, ldconfig evaluates paths starting with the system defaults in /etc/ld.so.conf and moving on to paths in /etc/ld.so.conf.d/. You can edit these to have /usr/local/lib come first. Remember to run ldconfig (as root) afterwards. Adding a file with /usr/local/lib into /etc/ld.so.conf.d/ probably won't do the trick since it will still come after the default path where the original libraries live. Possibly on your machine the system libraries are in an architecture-specific path such as /usr/lib/i386-linux-gnu, set from a file in /etc/ld.so.conf.d/, in which case the path order depends on alphabetical order of the filenames. You can use a file with a number on the front to make sure you come first.

All of which is great fun and I hope you learned something, but it would be so much better to be able to uninstall the old libraries because you just don't want to use them. You probably can't because there are dependencies on them, for example the libavcodec libraries need them, probably others too. To replace them you would need to create three deb packages called libvorbis0a, libvorbisenc3, and libvorbisfile2, containing your new builds. Then install those which will replace the originals and you'll have no worries about paths.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 18th April 2014 - 05:32