User:Signore Iredell

From Second Life Wiki
Revision as of 16:48, 9 January 2007 by Signore Iredell (talk | contribs)
Jump to navigation Jump to search

Stuff




January 8, 2007

Compiling the Second Life Viewer source code on Ubuntu Edgy

unpacked:

tar xzf slviewer-src-20070108c.tar.gz
tar xzf slviewer-linux-libs-20070108c.tar.gz
tar xzf fmodapi375linux.tar.gz

copied required FMOD headers and libraries into the Second Life Viewer source tree:

cd into the FMOD directory
cp api/inc/* ../linden/libraries/i686-linux/include/
cp api/libfmod-3.75.so ../linden/libraries/i686-linux/lib_release_client/

installed via Synaptic:

gcc-3.4 gcc-3.4-base g++-3.4 scons

Now, I am new to scons, and since I’m on Ubuntu Edgy -that uses gcc-4.1- I thought maybe I had to do something like this (not sure this is a good idea), but actually we don’t need it:

export CC=’/usr/bin/gcc-3.4′

after I learnt this in the Linux Client Users group chat (thanks you all guys!), I went to Maryport and enjoyed a compile’n'dance party while giving the magic command:

scons DISTCC=no BTARGET=client BUILD=release

Then I got some errors, asked help to Linux Client fellows, then I installed:

libglu1-mesa-dev libgl1-mesa-dev mesa-commons-dev
flex bison

I tried again running scons, and as described here, "compiler couldn't find gtk/gtk.h" So I edited the indra/SConstruct file removing the leading spaces from the 6 ‘ ../libraries/’ strings from around line 187 onwards.

A couple of hours later… …scons: done building targets. One step further!

Then I ran it:

 ( cd newview && LD_LIBRARY_PATH=../../libraries/i686-linux/lib_release_client:${LD_LIBRARY_PATH}:/usr/local/lib  ./secondlife-i686-bin )

And it started! But it is "unable to initialize communications": I’m running it from inside the tree but I forgot to do this from the indra directory:

  $ cp ../scripts/messages/message_template.msg newview/app_settings/

And then it works! I’m in world!


Next step: packaging the client, substituting ‘BUILD=release’ with ‘BUILD=releasefordownload’ in the ‘Compiling’ section, in order to use the faster libkdu_v42R.so and libllkdu.so libraries.