• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: VWR-1151
Type: Bug Bug
Status: Resolved Resolved
Resolution: Won't Finish
Priority: Normal Normal
Assignee: Unassigned
Reporter: Nicholaz Beresford
Votes: 7
Watchers: 7
Operations

If you were logged in you would be able to see more operations.
1. Second Life Viewer - VWR

Updated version of VC8/VS2005 project files included in source

Created: 10/Jun/07 06:09 AM   Updated: 08/Dec/08 07:17 AM
Return to search
Component/s: Source Code
Affects Version/s: 1.16.0.x
Fix Version/s: None

File Attachments: 1. Zip Archive vc8_1.19.1.4_v1.patch.zip (5 kB)
2. Zip Archive vc8_1_17_2_V1.zip (44 kB)
3. Zip Archive vc8_1_17_2_V2.zip (44 kB)
4. Zip Archive vc8_1_17_2_V3.zip (44 kB)
5. Zip Archive vc8_1_17_2_V4.zip (47 kB)
6. Zip Archive vc8_1_17_V1.zip (45 kB)
7. Zip Archive vc8_1_17_V2.zip (44 kB)
8. Zip Archive vc8_1_18_1_V1.zip (47 kB)
9. Zip Archive vc8_1_18_V1.zip (46 kB)
10. Zip Archive vc8_1_18_V2.zip (46 kB)
11. Zip Archive vc8_1_18_V3.zip (46 kB)
12. Zip Archive vc8_1_18_V4.zip (47 kB)
13. Zip Archive vc8_1_18_V5.zip (47 kB)
14. Zip Archive vc8_1_18_V6.zip (46 kB)
15. Zip Archive vc8_1_18_V7.zip (47 kB)

Issue Links:
Duplicate
 

Last Triaged: 05/Jun/08 06:19 PM
Source Version: 1.17.0.9
Linden Lab Issue ID: DEV-3823
Patch attached: Patch attached
Linden Lab Internal Branch: release


 Description  « Hide
There is a set of VC8 project files in the source archive which appear to be broken since 1.14.

I am attaching a working set for the current version. It is a complete set apart from the VS2003 project files. So, while overwriting existing "_vc8." files, it should not harm the VS2003 version.

The plan is to keep them here for download and allow others to upload newer versions if necessary. I propose a file name scheme like:
vc8_<version>_V<version of project files>.zip ... so my first upload here is for 1_17 and the first attempt of making project files for this (V1).

To use the files, simply download and unpack onto the linden source tree. The use Visual Studio 2005 and Open, Solution linden/indra/indra_complete/indra_complete_vc8.sln

See https://wiki.secondlife.com/wiki/Compiling_the_viewer_%28MSVS2005%29 for more details

------------------

[Edit, NB] Current version is vc8_1_17_V2.zip ... which should work with 1.16, 1.17.0.9 and 1.17.0.11 and was reported to work with 1.17.0.12 too.

[Edit, FL] Also provided are vc8_1_17_2_V4.zip, which works with 1.17.2.0, and vc8_1_18_1_V7.zip, which works with 1.18.5.3.
.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Nicholaz Beresford added a comment - 10/Jun/07 06:13 AM

Upload: vc8_1_17_V1.zip

Based on 1.17.0.9 but should also work on 1.16.

Incorporates

  • ";_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T"
  • Wchar_t - No

for the Debug, ReleaseNoOpt and ReleaseForDownload configurations.through means of inheriting from a vcprops file.

Open indra_complete_vc8.sln and just compile.


march Korda added a comment - 11/Jun/07 04:36 PM
can not download.
no find jira.secondlife.com/secure/attachment/10763/vc8_1_17_V1.zip

Nicholaz Beresford added a comment - 12/Jun/07 01:51 AM

I just tried and it works ... maybe a JIRA hiccup.

march Korda added a comment - 12/Jun/07 06:35 AM
ok. I get it by another download program.
I'll try it.

Sardonyx Linden added a comment - 12/Jun/07 09:59 AM
Nicholaz, we have only one or two people using VC8 internally, and they don't work on open source contributions. Your changes conflict with our internal project files at the moment, so I can't apply them.

Our internal copies of those files don't get touched often, so if you redo your changes against the next source snapshot, it should be reasonably safe. Also, sending a patch instead of a directory full of files makes it much more likely that we can apply your changes cleanly. Sending complete files almost guarantees that we can't apply your work.

Thanks.


Nicholaz Beresford added a comment - 12/Jun/07 10:38 AM

I'm uploading a 2nd version of the vc8 files here for everybody outside LL then

This one was tested with 1.17.0.11 and has one file renamed (the vcprops file now also has "_vc8" in the name). I just compiled 1.17.0.11 here with those files and both ReleaseForDownload and ReleaseNoOpt went through and could be started.


Feep Larsson added a comment - 26/Jun/07 02:23 PM
I've uploaded modified VC8/VS2005 files for the 1.18.0.0 release, which added some new files. Since I primarily develop on VS2005, I'll try to keep these up to date as new releases come out.

Nicholaz Beresford added a comment - 27/Jun/07 05:11 AM

Excellent Feep! I normally work with VS2003 so it's been an extra chore for me.

Btw, VC8 1.17.1 or 1.17.2 files anybody yet?


Nicholaz Beresford added a comment - 27/Jun/07 03:12 PM

Attaching VC8 files for 1.17.2

Changes:

  • added png-sources/headers to llimage
  • added missing "mv" command to prebuild for indra.y (debug config)
  • added png12.lib and dnsapi.lib to all newview, all configurations
  • added additional exclude libraries (linker, input) to newview, all configurations
  • removed linden libraries (llaudio, llcommon) from newviewer, linker, input in some configurations

Should work fine with 1.17.2, but you still need the png/zlib header files


Nicholaz Beresford added a comment - 28/Jun/07 05:07 AM

Attaching version 2 for 1.17.2

In addition to V1 (see above) It has lscript_library.lib removed from linker inputs. Normally inconsequential but this did cost me some grief about two weeks ago on my first attemts to compile under VC8.

This file should be as clean as it can get for _vc8 (those things cleaned up are coming from the _vc71 projects).


Feep Larsson added a comment - 28/Jun/07 02:21 PM
Attaching vc8_1_18_V2.zip, which will compile 1.18.0.3. In addition to these project files, you'll also need the llimagepng files from https://jira.secondlife.com/browse/VWR-79, and Nicholaz's 1.17 png files from http://www.blueflash.cc/users/nicholaz/libs.

Feep Larsson added a comment - 28/Jun/07 08:03 PM
Found a very subtle but global bug caused by a change in behavior between VC7.1's STL implementation and VC8's STL implementation. VC8, by default, checks STL iterators to ensure that they have a back-link to their associated container. If they don't, the program will break (if you're running in the debugger) or crash (if you're not). However, you can still create a containerless iterator by calling the default constructor on an iterator type--and, as it turns out, LLSD::Impl::beginArray() and LLSD::Impl::endArray() do exactly that. This means that if beginArray() or endArray() are called on the "immutableUndefined" LLSD instance returned by LLSD::Impl::undef(), an iterator will be created that will later crash the app.

The solution to this is to pre-define the preprocessor symbol _SECURE_SCL to be 0, in the project files. This causes that particular iterator check to be disabled, and the behavior reverts to exactly what it was in VC7.1. With the project files contained in this JIRA issue, the easiest way to do that is to add _SECURE_SCL=0 to the preprocessor definitions in SL-UpgradeFromVC71_vc8.vsprops, so that all projects and all configurations inherit it.

New project file uploads containing this fix follow.


Feep Larsson added a comment - 28/Jun/07 08:04 PM
1.17.2 VC8/VS2005 project files with _SECURE_SCL fix mentioned above.

Feep Larsson added a comment - 28/Jun/07 08:05 PM
1.18.0.3 VC8/VS2005 project files with _SECURE_SCL fix mentioned above.

Feep Larsson added a comment - 29/Jun/07 12:03 PM
Uploaded vc8_1_17_2_V4.zip, which includes all previous fixes, and enables build/run of the "test" project.

Feep Larsson added a comment - 29/Jun/07 12:05 PM
Uploaded vc8_1_18_V4.zip, which is based on Nicholaz's excellent 1.17 project files. This version also includes previous fixes, and enables build/run of the "test" project. Tested with 1.18.0.3.

Feep Larsson added a comment - 06/Jul/07 02:36 PM
Uploaded vc8_1_18_V5.zip, which works with 1.18.0.4.

Feep Larsson added a comment - 12/Jul/07 12:26 PM
Uploaded vc8_1_18_V6.zip, which works with 1.18.0.6.

Feep Larsson added a comment - 06/Aug/07 07:01 AM
Uploaded vc8_1_18_1_V1.zip for viewer version 1.18.1.2.

Alissa Sabre added a comment - 11/Aug/07 07:47 PM
Feep, I appreciate your effort to keep submitting the updated set of solution/project files.

I'm experiencing a problem with your latest vc8_1_18_1_V1.

When I build 1.18.1.2 viewer with your solution/project files, the build suceeds, but the resulting binary has some problem handling group IM. When I try to start a new group IM session, it doesn't; it shows "Starting session with XXX please wait." on the IM panel, but the session doesn't start. I noticed that, when I do so, the following warnings (apparently related to this behaviour) are logged:

2007-08-12T02:13:07Z WARNING: LLMessageSystem::dispatch: Ignoring unknown message ChatterBoxSessionStartReply
2007-08-12T02:13:40Z WARNING: LLMessageSystem::dispatch: Ignoring unknown message ChatterBoxSessionAgentListUpdates

I'm not sure but I have a feeling this is due to some missynchronization of the message template. Strangely, this issue disappears if I follow "manual conversion" process described on wiki: https://wiki.secondlife.com/wiki/Converting_project_files_for_MSVS2005


Feep Larsson added a comment - 08/Jan/08 10:51 AM
Uploaded vc8_1_18_V7.zip, which works with 1.18.5.3.

Alissa, sorry for not replying earlier--I wasn't watching this issue. Now I am, so let me know if these files don't solve your problem.


Squash Otoro added a comment - 20/Mar/08 09:47 AM
Anyone mind uploading the 1_19 project files? I'm terrible at converting these things.

Felix Duesenburg added a comment - 04/Apr/08 05:22 AM - edited
Please find attached vc8_1.19.1.4_v1.patch.zip. (Hint: I'm using DXSDK9.)

Hope this works!

Edit: It doesn't build the debug configuration yet.


Lear Cale added a comment - 28/Apr/08 10:46 AM - edited

How is the patch file posted above to be used? The following gives an error:

\cygwin\bin\cat vc8_1.19.1.4_v1.patch | \cygwin\bin\patch
Can't find file to patch at input line 5

It also doesn't work with -[cenu] options, either not finding the file to patch or calling the input garbage. I'm in the directory containing the "linden" directory. The file "linden/indra/indra_complete/indra_complete_vc8.sln" exists.

Also, what is the patch based from? The patches work (when I enter each of the 3 file names in manually) but only against the original project files. If I install the 1.18 tarfile first, they don't work, and they don't seem to have nearly enough files patched.


Soft Linden added a comment - 05/Jun/08 04:24 PM
This is covered by cmake, which will generate appropriate project files for VS2003/2005/2008

Rob Linden added a comment - 07/Dec/08 11:46 PM
Thanks for keeping these files up in the pre-CMake days. Now that we've got CMake in place and that we've been using VS2005 by default, it should be easier to build there these days.

Lear Cale added a comment - 08/Dec/08 07:17 AM
Should be, but isn't. Before, we could at least fix the build problem, now they're nearly hopeless. However, I'm optimistic that all the CMake problems will be solved someday and we'll all be able to build by following the instructions on the Wiki. Still a long way to go on that, though.