SV: [sldev] Unresolved externals

Soft soft at lindenlab.com
Fri Jul 18 06:19:36 PDT 2008


On Fri, Jul 18, 2008 at 8:02 AM, Suzhanna Rossini
<suzhanna.rossini at balsaestates.com> wrote:
>> On Fri, Jul 18, 2008 at 5:53 AM, Suzhanna Rossini
>> <suzhanna.rossini at balsaestates.com> wrote:
>> >> >
>> >> >> I also get this error when trying at a friend who has VS2003..
>> >> >> We tried with svn release 772..
>> >> >> Here're the error messages produced at link time:
>> >> >>
>> >> >> Linking...
>> >> >> llcompilequeue.obj : error LNK2019: unresolved external symbol
>> "int
>> >> >> __cdecl
>> >> >> lscript_compile(char const *,char const *,char const *,int)"
>> >> >> (?lscript_compile@@YAHPBD00H at Z) referenced in function
>> "protected:
>> >> void
>> >> >> __thiscall LLFloaterCompileQueue::compile(class
>> >> >> std::basic_string<char,struct std::char_traits<char>,class
>> >> >> std::allocator<char> > const &,class LLUUID const &)"
>> >> >>
>> >> >>
>> >> >> llpreviewscript.obj : error LNK2001: unresolved external symbol
>> "int
>> >> >> __cdecl
>> >> >> lscript_compile(char const *,char const *,char const *,int)"
>> >> >> (?lscript_compile@@YAHPBD00H at Z)
>> >>
>> >> Aimee, Suzhanna - Would you please walk through the steps you're
>> using
>> >> to unpack and build? It's possible there's a bogus step in our
>> >> instructions that wants fixing.
>> >
>> > Absolutely.. ;-)
>> >
>> > 1. Check out a clean copy of
>> http://svn.secondlife.com/svn/linden/release
>> > (now I got r798).
>> >
>> > 2. Download and unzip the art/lib packages mentioned in
>> > release\doc\asset_urls.txt (slviewer-artwork-release-r92064.zip and
>> > slviewer-win32-libs-release-r92064.zip)
>> >
>> > 3. Copy in fmod, GL, llkdu.dll and QuickTime libs etc.
>> >
>> > 4. Open a Visual Studio .NET 2003 Command Prompt.
>> >
>> > 5. CD into the .\release\indra directory and run "develop.py -G
>> VS2003
>> > configure" (result, see attached "config_steps.txt")
>> >
>> > 6. Open indra\build-VS2003\SecondLife.sln in VS2003
>> >
>> > 7. Hit ctrl-shift-b to start the build.
>> >
>> > 8. Establish the fact that is still gives the errors.. (See
>> buildlog.txt)
>>
>> I don't see anything wrong with the steps you're taking. The GL copy
>> is unnecessary after 1.19 or so, and QuickTime should be found
>> automatically if you've installed the SDK under Program Files, but
>> they shouldn't hurt here.
>>
>> I'm assuming you've installed cygwin and added it to Visual Studio's
>> binary search path, and you haven't provided some other flex and
>> bison. Do me a favor and check 'flex --version' and 'bison --version'
>> in cygwin. Mine are at flex 2.5.35 and bison 2.3.
>
>
> Coming to think of it.. Would there be any point for me to install VS2005? I
> can use my friends license since he's moved completely to VS2008 and only
> keeps VS2003 for special occasions.
> The only package I have myself is VS2008, and that seems to be a lot more
> "unsafe" judging from discussions here and elsewhere.
>
> I also came to think of llkdu.dll, it seems like that isn't copied to the
> right place by unpacking the libraries and pulling the SVN sources.. Neither
> does it seem to be built in the process, if I don't copy it manually, I get
> a copy error from the VS2003 solution.

I don't think switching to VS2005 will make a difference. I just
finished a VS2003 build and I don't have the problem there either. I
also ran a cygwin setup update to ensure that nothing bad had crept
into cygwin recently.

The function that your linker isn't finding is in lex_yy.cpp. Try
adding an "#error I got here" before this function in lex_yy.cpp, just
to rule out some preprocessor difference that's making the code
unreachable. It's possible you're inheriting a strange #define from
somewhere:

BOOL lscript_compile(const char* src_filename, const char* dst_filename,
					 const char* err_filename, BOOL is_god_like)


Regarding llkdu - that's currently provided for release candidate
builds only. There are still some sticky issues attached to that. For
the time being, you can remove the three llkdu rules from
copy_win_libs and the viewer will use openjpeg if llkdu isn't present.
Again though, this should have nothing to do with your link error.


More information about the SLDev mailing list