Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0008512opensim[MISC] Compiling / Buildingpublic2019-04-02 20:452019-04-04 19:51
Assigned Tomewtwo0641 
PlatformOperating SystemOperating System Version
Product Version 
Target VersionFixed in Versionmaster (dev code) 
Summary0008512: runprebuild.bat will not detect VS 2019
DescriptionI upgraded to Visual Studio 2019 and have discovered that runprebuild.bat will not detect the installation and will not generate compile.bat although it will generate OpenSim.sln and it can be opened and compiled from within VS.

Attached is a patch to fix this; Although I am unsure if the path for VS2019 is "correct" since I could not find MSBuild.exe following the similar path convention for 2017. It does generate the files and compiles fine via compile.bat though as far as I can tell.

The patch also fixes a minor issue where the generated compile.bat would have the msbuild command outside of the quotation marks like this "Path\To\MSBuild"\msbuild OpenSim.sln and it now generates with "Path\To\MSBuild\MSBuild.exe" OpenSim.sln
TagsNo tags attached.
Git Revision or version number
Run Mode Grid (Multiple Regions per Sim)
Physics EngineubODE
Script Engine
Environment.NET / Windows64
Mono VersionNone
Attached Filespatch file icon 0001-Detect-VS2019-in-runprebuild.bat-and-fix-a-small-iss.patch [^] (1,746 bytes) 2019-04-02 20:45 [Show Content]

- Relationships

-  Notes
UbitUmarov (administrator)
2019-04-04 03:57

sorry, but who told 2019 is supported?

try open the solution OpenSim.sln on the ide, but for now you are on your own, no plans to test 2019 in near future.
mewtwo0641 (reporter)
2019-04-04 05:28
edited on: 2019-04-04 05:33

I just figured it'd be a nice option ;) VS2019 seems a lot more stable and a lot more responsive; plus the way I did the patch it should fall back to 2017 if 2019 isn't found.

I did test opening the .sln with 2019 and compile/run with no (apparent) issues.

UbitUmarov (administrator)
2019-04-04 07:10

Ok added to master.
But until we can test vs2019 ourselfs, we can't assume it as supported.

Use at own risk :)
mewtwo0641 (reporter)
2019-04-04 07:46

Will do, thank you :)
mewtwo0641 (reporter)
2019-04-04 07:54
edited on: 2019-04-04 08:19

Just tested but sadly, this won't work unless the rest of the patch is applied where the lines

set ValueValue="%PROGRAMS%\Microsoft Visual Studio\2019\%%e\MSBuild\Current\Bin"

are changed to include MSBuild.exe at the end like this

set ValueValue="%PROGRAMS%\Microsoft Visual Studio\2019\%%e\MSBuild\Current\Bin\MSBuild.exe"

otherwise it still won't find VS2019 (No compile.bat generated) and for VS2017 the resulting batch file comes out looking like this

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin"\msbuild

Note that the \msbuild portion of the path is outside of the quotation marks. This did happen prior to applying the changes for VS2019 though and while it worked, it made adding custom switches to the batch file impossible (Seperate issue)

mewtwo0641 (reporter)
2019-04-04 08:14

Actually my mistake :) I found the problem, the lines

if "%PROCESSOR_ARCHITECTURE%"=="x86" set PROGRAMS=%ProgramFiles%
if defined ProgramFiles(x86) set PROGRAMS=%ProgramFiles(x86)%

need to be moved above the check for VS2019. As it is right now it sits between the check for 2019 and 2017 resulting in the check for VS2019 getting basically empty string for %PROGRAM%

I moved it up and it works now, but both VS2017 and VS2019 still exhibits the issue described in the previous note:

"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\"\msbuild opensim.sln

Where msbuild is sitting outside of the quotations in the path
Gavin Hird (reporter)
2019-04-04 10:08

I am sure there exist more intelligent ways of detecting VS2019 than a hardcoded path. VS2019 is no longer a Windows only product but exist also on macOS and compiles OpenSim equally well as the Windows version.

Microsoft's documentation should be consulted.
mewtwo0641 (reporter)
2019-04-04 18:50
edited on: 2019-04-04 18:51

@Gavin - Has runprebuild.bat ever worked on MacOS though? I am confused because I thought batch files (.bat) are strictly a Windows thing while Linux and Mac have shell scripts (.sh).

UbitUmarov (administrator)
2019-04-04 19:25

oops, missed that also
mewtwo0641 (reporter)
2019-04-04 19:46

Just tested at master, seems to work much better now :) Thanks Ubit!

- Issue History
Date Modified Username Field Change
2019-04-02 20:45 mewtwo0641 New Issue
2019-04-02 20:45 mewtwo0641 File Added: 0001-Detect-VS2019-in-runprebuild.bat-and-fix-a-small-iss.patch
2019-04-02 20:47 mewtwo0641 Status new => patch included
2019-04-04 03:53 mewtwo0641 Description Updated View Revisions
2019-04-04 03:57 UbitUmarov Note Added: 0035017
2019-04-04 05:28 mewtwo0641 Note Added: 0035018
2019-04-04 05:33 mewtwo0641 Note Edited: 0035018 View Revisions
2019-04-04 07:10 UbitUmarov Note Added: 0035019
2019-04-04 07:46 mewtwo0641 Note Added: 0035020
2019-04-04 07:54 mewtwo0641 Note Added: 0035021
2019-04-04 07:56 mewtwo0641 Note Edited: 0035021 View Revisions
2019-04-04 08:14 mewtwo0641 Note Added: 0035022
2019-04-04 08:19 mewtwo0641 Note Edited: 0035021 View Revisions
2019-04-04 10:08 Gavin Hird Note Added: 0035023
2019-04-04 18:50 mewtwo0641 Note Added: 0035024
2019-04-04 18:51 mewtwo0641 Note Edited: 0035024 View Revisions
2019-04-04 19:25 UbitUmarov Note Added: 0035025
2019-04-04 19:46 mewtwo0641 Note Added: 0035026
2019-04-04 19:51 mewtwo0641 Status patch included => resolved
2019-04-04 19:51 mewtwo0641 Fixed in Version => master (dev code)
2019-04-04 19:51 mewtwo0641 Resolution open => fixed
2019-04-04 19:51 mewtwo0641 Assigned To => mewtwo0641

Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker