Update how to setup a windows build with visual studio authored by Kuppe, Christian's avatar Kuppe, Christian
* *Microsoft Visual Studio* 2015 Community can compile OpenSimRoot.
### *Microsoft Visual Studio* __2015__ Community can compile OpenSimRoot.
* Clone or check-out gitlab: This can be done with Visual Studio (optional):
###### Clone or check-out gitlab: This can be done with Visual Studio (optional):
1. Start Visual Studio, go to Team Explorer and go to git:
2. New > Repository > Locale git-repository > clone gitlab repository, you can do it with https://gitlab.com/rootmodels/OpenSimRoot.git
* Create new Visual Studio project with the gitlab code:
###### Create new Visual Studio project with the gitlab code:
1. In the Visual Studio main menu select: New > From existing code (last entry)
2. Select Visual C++
3. choose folder with existing OpenSimRoot code and name your Visual Studio project
4. Next > Windows application > finish
* Build a Windows .exe:
###### Build a Windows exe:
1. Choose build option x64, Release (optional)
2. Compile / build new
3. The .exe file can be found in the project folder and has the name you gave at (3) above, while creating the project.
### Known issues with *Visual Studio* __2019__ Community:
* set only the src as project folder.
###### Solve XSD error:
1. Start Visual Studio 2019 Developer Command Prompt as __Admin__. (Type "dev" in the search box,...)
2. XSD depends on the CodeProvider. We install the CodeProvider dll in the GAC. I typed (in the command window):
"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\gacutil.exe" -i "%DevEnvDir%\PublicAssemblies\CppCodeProvider.dll"
Your path to gacutil.exe can be different. The second part is the important one.
###### Solve CL.exe exit with error code 1:
* compile with c++14 (/std:c++14) (OpenSimRoot state 2019, Sept. 02)
* compile with VS compiler flag /bigobj
#### Run tests
* For example double click on the generated exe: Select a file from the tests folder. Output is created in the folder of the executable by default.