User:Signore Iredell
Stuff
- my blog with some stuff about personal media in Second Life
- il blog di Second Life Italia, dove scrivo in italiano (volete contribuire? segnalatemelo con un PM nel forum o in questa pagina)
- i forum di Second Life Italia
- Creative Commons in Second Life
- bookmarks about Second Life
- snapshots
February 23, 2007
Compiling Second Life First Look 1.13.3.58018 on Ubuntu Edgy using BUILD=releasefordownload
We use the BUILD=releasefordownload scon option because we want to build a complete tarball for the end-user. See ‘Packaging the client’ instructions in Compiling the viewer (Linux). Get sources, linux-libs and artwork of the viewer, fmodapi375linux.tar.gz and unpack them.
Edit the first line of these scripts, changing #!/bin/sh to #!/bin/bash
- linden/indra/newview/linux_tools/launch_url.sh
- linden/indra/newview/linux_tools/launch_url.sh
- linden/indra/newview/linux_tools/wrapper.sh
- linden/indra/newview/linux_tools/package-client.sh
- linden/libraries/include/boost/pool/detail/pool_construct_simple.sh
- linden/libraries/include/boost/pool/detail/pool_construct.sh
- linden/libraries/i686-linux/include/apr-1/arch/unix/apr_arch_threadproc.h
Workaround for llmozlib error:
- comment lines 126-147 and 194-195 in linden/indra/SConstruct
- change linden/indra/llcommon/llpreprocessor.h : at line 54, change #define LL_LIBXUL_ENABLED 1 to #define LL_LIBXUL_ENABLED 0
Then set up FMOD:
cd fmodapi375linux/ cp api/inc/* ../linden/libraries/i686-linux/include/ cp api/libfmod-3.75.so ../linden/libraries/i686-linux/lib_release_client/
and other stuff:
export SLSRC=/your/path/to/linden/ cp -a /usr/include/atk-1.0 ${SLSRC}/libraries/i686-linux/include/ cp -a /usr/include/gtk-2.0 ${SLSRC}/libraries/i686-linux/include/ cp -a /usr/lib/gtk-2.0/include/* ${SLSRC}/libraries/i686-linux/include/gtk-2.0/ cp -a /usr/include/glib-2.0 ${SLSRC}/libraries/i686-linux/include/ cp -a /usr/lib/glib-2.0/include/* ${SLSRC}/libraries/i686-linux/include/glib-2.0/ cp -a /usr/include/pango-1.0 ${SLSRC}/libraries/i686-linux/include/ cp -a /usr/include/cairo/* ${SLSRC}/libraries/i686-linux/include/
Edit linden/indra/newview/linux_tools/client-manifest-i686 - look for the kdu string and uncomment the two lines (libllkdu and libkdu) so that libs get automatically copied into the right place in the runtime directory.
Then,
scons DISTCC=no BTARGET=client BUILD=releasefordownload
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.
This template is no longer supported. See Template:ISO 639-3/cat-speaking for the template which replaces this one.