Talk:Build the Viewer on Linux

From Second Life Wiki
Revision as of 11:39, 13 June 2007 by Seg Baphomet (talk | contribs)
Jump to navigation Jump to search

I had to add "class LLUICtrlFactory;" to llui/lluictrl.h and llui/llviewborder.h to avoid a bunch of problems about that class missing --Eddy Stryker


llmozlib

As Tofu wrote (Feb 23 2007), "you shouldn't generally need to download and build LLMozLib for a SL viewer build unless you're hacking on LLMozLib itself or porting SL to a platform which we don't supply pre-built libraries for".

Nonetheless, there's a need of instructions on

and/or

--Boroondas Gupte 06:10, 26 February 2007 (PST)

I edited it so it's complete if you want llMozLib off, getting llMozlib compiled and working with the viewer is actually nontrivial, compiling llMozLib is just about as hard as compiling the viewer itself! Gigs Taggart 08:06, 27 February 2007 (PST)
What functionality is lost if you do not use llmozlib? Meyaden Beck 20:11, 12 April 2007 (PDT)
You won't have any in-viewer browser windows (e.g. F1-Help) as well as no HTML login screen (you'll get the old login screen with the static picture instead). Opening pages in an external browser from within SL (e.g. links in chat/IM) won't be affected, nor will be inworld actions triggered by your external browser (e.g. SLUrl). --Boroondas Gupte 06:57, 7 May 2007 (PDT)

mozjs

A similar problem seems to be present with beta-1.13.4.3, only that it's -lmozjs not -lllmozlib that's failing at linktime. I can't even seem to locate the corresponding header file (expected filename 'mozjs.h') so it might well be that the problem only looks similar to the llmozlib one, but actually isn't. I'll post to the [sldev] list as soon as I have investigated this further. --Boroondas Gupte 11:22, 1 March 2007 (PST)

Help?

Would it be useful to add a blurb on where people can get help compiling, specifically in Linux. Or at least an internal link to another wiki page that has a list of places to get help in each version, MAC/WIN/LIN/BSD/(however far people want to break it down, etc.).

little helper script

For those of you who don't want to copy-paste from this article for every build they compile, I put a little bash script I'd liked to share in my user space: User:Boroondas_Gupte/unpack.sh. It just does a part of what's explained in this article. --Boroondas Gupte 09:59, 6 March 2007 (PST)

Error?

Under the heading "fix shell scripts" there is a header file listed. can someone else confirm this should not be in that list, and if it should, why does it not have a #!/bin/sh at the top of it?

  • linden/libraries/i686-linux/include/apr-1/arch/unix/apr_arch_threadproc.h

Required Headers

Is there a reason that the instructions include copying header files to the source tree?

I have not attempted the install yet, that will probably be in a few days for me. However, most packages don't require the copying of header files from any standard lib into their own source directories. I am not sure if this practice is really a good one.

Will the package not compile if the headers are simply in their proper locations? If so, this is something that the developers may want to consider fixing. I would personally consider that a bug.

Normal procedure with most apps is to have the librarries propperly installed, and have the code or makefile written so that it looks in the right place. Meyaden Beck 19:41, 12 April 2007 (PDT) (I forgot to sign before I think)

Autoconf is a wonderful tool. :P

This setup is so that a fixed build of included libraries are setup for each branch and platform. The host platform can change independently of the SL build. Also, isolation of these libraries greatly reduce debug issues. There are a few patches to use the host platform's installed libraries instead. However, a few changes still need to be made for consistency. Dzonatas Sol 11:58, 12 April 2007 (PDT)
Hmmm... I see, I think. My next question (and if I get the time I may fix this one myself), why the choice to pretty much ignore compilation of llMozlib? Stating that "Compiling it is a pain, and this is how you disable it", doesn't look good. I haven't gotten that far in my current Linux install yet. I just finished installing XFce4, but as soon as I get OpenOffice.org and Blender installed, I will likely move on to Second Life. When I do, I will go through the steps of compiling llMozlib and take notes on what I did to make it work. :-) I should probablly also make sure to include a warning that I am using an LFS build. However, the instructions the LFS site uses to build most packages should theoretically work for just about any system. ^_^Meyaden Beck 19:41, 12 April 2007 (PDT)

Hmm. I believe older versions of this page clearly showed instractions for those who just want to compile viewer only and for those who want to build everything. I believe the older style is better.

Are there anyone who objects to such reorganization?

--Alissa Sabre 22:51, 8 June 2007 (PDT)

I agree to every kind of reorganization, since this page is a bit messy. We should provide a simplified version of it, at least. I think it's a bit scary for newbies. So today I moved the 'Packaging errors' section to Common compilation problems page (we may want to give more visibility to that link); I removed the 'Fix Shell Scripts' because I think it has been fixed; I added some questions where I think we need to being more informative; It looks like you only need to add FMOD=no to the scons command, and I think we should give this information only - i'm not sure about this, so in the meantime I just made some changes to both 'Prerequisites' and 'Copy headers and libraries into the source tree' sections.

Please reverse my changes if not appropriate! I'm OK with a reorganization of this page. Pleae do a new page version for every edit, using proper comments, so revert is easier. --Signore Iredell 06:42, 9 June 2007 (PDT)


Note that gcc-3.4 is NOT required, patches to fix compiling on gcc 4.x were among the first to be merged after the source release. I've been compiling with gcc 4.x from the beginning and it works fine. I'm not sure how to rework the article though, SConstruct is hardwired to call g++-3.4 which won't even work with Fedora's compat compiler (which is named g++34), which does not seem to be mentioned in the article either. Please merge VWR-218 ;P Seg Baphomet 12:39, 13 June 2007 (PDT)