Friday, 19 October 2007

Second Life Client Built

Following instructions on the Wiki, I've just built my first Second Life client.
Here I am debugging it in Visual Studio,

I had a few problems building it, but after following the instructions properly it worked out.

There is a small bug in the newview project though:

Properties->Configuration Properties->Custom Build Step->General->Command Line

It should read

copy "$(TargetDir)\$(TargetFileName)" "$(ProjectDir)"

Instead of

copy $(TargetDir)\$(TargetFileName) $(ProjectDir)

That makes sure that the executable gets copied when you have spaces in your path.

I also had a problem building the source,

llcompilequeue.obj : error LNK2019: unresolved external symbol "int __cdecl lscript_compile(char const *,char const *,char const *,int)" (?lscript_compile@@YAHPBD00H@Z) referenced in function "protected: void __thiscall LLFloaterCompileQueue::compile(char const *,class LLUUID const &)" (?compile@LLFloaterCompileQueue@@IAEXPBDABVLLUUID@@@Z)

llpreviewscript.obj : error LNK2001: unresolved external symbol "int __cdecl lscript_compile(char const *,char const *,char const *,int)" (?lscript_compile@@YAHPBD00H@Z)

This is mentioned in the Wiki, but only for .NET 2006, whereas I was using the (recommended) 2003. Upon further investigation it turned out to be a problem in the compilation of the lscript_compile or lscript_compile_fb projects. Flex was crashing for some reason. I realised that I had earlier cancelled an update of cygwin which was probably the reason for the current failure, so I just started my update again and once that was complete the projects compiled fine without Flex barfing.

Anyway, I finally built and ran the executable.

The significance of this is that I could (potentially) now develop a non-visual client, using only audio feedback. That's got to be the ultimate goal of an accessible client but is unfortunately beyond the scope of this current project. All I'll be able to do within this remit is evaluate the feasibility of that development and make suggestions for the future.

No comments: