Difference between revisions of "User:Signore Iredell"

From Second Life Wiki
Jump to: navigation, search
m (February 23, 2007)
Line 15: Line 15:
 
'''Compiling Second Life First Look 1.13.3.58018 on Ubuntu Edgy using BUILD=releasefordownload'''
 
'''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. Follow the ‘Packaging the client’ instructions in [[Compiling the viewer (Linux)]].
+
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 from ''#!/bin/sh'' to ''#!/bin/bash''
+
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/launch_url.sh
 
* linden/indra/newview/linux_tools/launch_url.sh
Line 26: Line 28:
 
* linden/libraries/i686-linux/include/apr-1/arch/unix/apr_arch_threadproc.h
 
* linden/libraries/i686-linux/include/apr-1/arch/unix/apr_arch_threadproc.h
  
 +
Workaround for [https://lists.secondlife.com/pipermail/sldev/2007-February/000487.html 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/
 
  cd fmodapi375linux/
 
  cp api/inc/* ../linden/libraries/i686-linux/include/
 
  cp api/inc/* ../linden/libraries/i686-linux/include/
 
  cp api/libfmod-3.75.so ../linden/libraries/i686-linux/lib_release_client/
 
  cp api/libfmod-3.75.so ../linden/libraries/i686-linux/lib_release_client/
  
  export SLSRC=/your/path/to/linden/
+
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/atk-1.0 ${SLSRC}/libraries/i686-linux/include/
 
  cp -a /usr/include/gtk-2.0 ${SLSRC}/libraries/i686-linux/include/
 
  cp -a /usr/include/gtk-2.0 ${SLSRC}/libraries/i686-linux/include/
Line 40: Line 47:
 
  cp -a /usr/include/cairo/* ${SLSRC}/libraries/i686-linux/include/
 
  cp -a /usr/include/cairo/* ${SLSRC}/libraries/i686-linux/include/
  
cd ../linden/indra/
+
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.
 
+
Edit 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
 
  scons DISTCC=no BTARGET=client BUILD=releasefordownload
 
We use the BUILD=releasefordownload scon option because we want to build a complete tarball for the end-user.
 
  
 
== January 8, 2007 ==
 
== January 8, 2007 ==

Revision as of 19:12, 22 February 2007

Stuff




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.