User:Paula Innis/MSVC2005 viewer compile progress

From Second Life Wiki
Jump to: navigation, search

After doing the following in VC2005 Express;


With slviewer-src-20070108c.zip & slviewer-win32-libs-20070108c.zip Plus additional libraries and development environment API's from Compiling_the_viewer_(MS_Windows) (Except that Python version 2.5 was installed)


  • Set 'Treat wchar_t as Built-in Type' to No for (atn least) llcommon,llwindow,llvfs and newview

This will get rid of the character typecast errors with the character set conversion calls (16 to 8 bit etc.)

  • In linden\indra\llcommon\llstringtable.h @ line 103
replace 'std' with 'stdext' (namespace moved)
  • In linden\indra\llcommon\llerror.h & linden\indra\win_updater\updater.cpp

adding something like;

#if LL_WINDOWS
# if (_MSC_VER >= 1400)
#  pragma warning(disable : 4996)
# endif
#endif
  • In linden\indra\llcommon\u64.cpp @line 36
char *aptr to const char *aptr
  • linden\indra\llprimitive\llprimitive.cpp @1200
exception_faces |= ((U64)1 << i);

other typecast fixes - all to do with time:)

(If you look at time()/time_t msdn documentation, there is a _USE_32BIT_TIME_T #define you can use to revert to the old 32bit time() calls. This might be easier/better than changing the code. --Bane Darrow 16:49, 9 January 2007 (PST))

  • linden\indra\test\llinventory.cpp @1433
(S32)now
  • linden\indra\llui\llsliderctrl.cpp @218,251
10.0 instead of 10 will do.
  • linden\indra\test\inventory.cpp @63
typecast to (S32)time(NULL)
  • linden\indra\newview\llstartup.cpp @1459
typecast to (S32)now
  • linden\indra\newview\llpaneldirevents.cpp @137,169
typecast to (S32)utc_time
  • linden\indra\newview\llfloaterreporter.cpp @668
typecast to (U32)mcd->mTime
  • linden\indra\newview\llfloaterland.cpp @2609,2878
typecast to (S32)time(NULL)
  • linden\indra\newview\llfloaterbump.cpp @120
typecast to (S32)mcd->mTime
  • linden\indra\newview\viewer.cpp @2510
srand((U32)time(NULL));
  • linden\indra\newview\llpaneldirevents.cpp @137,169
typecast to (S32)utc_time
  • linden\indra\newview\llurlwhitelist.cpp @42,43
change
 mUrlList ( 0 ),
 mUrlListIter ( 0 )
to
 mUrlList (  ),
 mUrlListIter (  )

I'm left with 1 compiler error linden\indra\test\lldatabase_tut.cpp missing in project test

2 compiler warnings

  • Project: lscript_compile_fb

Building ytab.cpp indra.y:93.33-45: warning: symbol STATE_DEFAULT redeclared conflicts: 44 reduce/reduce

  • Project: lscript_compile

ytab.cpp .\ytab.cpp(1841) : warning C4065: switch statement contains 'default' but no 'case' labels

a few Linker warnings

  • 2 * LNK4221 (no public symbols found)

bitpack.obj in project llcommon, llrect.obj in project llmath

  • 34 * LNK4099 in project win_crash_logger to do with the Apache PDBs

and the linker errors for boost and mozlib


Common_compilation_problems