automatic installation for vs build tools

thanks to @crowplexus for the curl and the vs_Community.exe cmd lines!
This commit is contained in:
⍚~Nex
2024-03-24 03:43:28 +01:00
parent 9f798911f1
commit cc6d448836
3 changed files with 16 additions and 16 deletions
+3 -15
View File
@@ -30,22 +30,10 @@ In the future (when the engine won't be a WIP anymore) we're gonna also publish
##### Tested on Windows 10 21H2
1. Install [version 4.2.5 of Haxe](https://haxe.org/download/version/4.2.5/).
2. Download [Visual Studio Build Tools](https://aka.ms/vs/17/release/vs_BuildTools.exe)
3. Wait for the Visual Studio Installer to install
4. On the Visual Studio installer screen, go to the "Individual components" tab and only select those options:
- MSVC v143 VS 2022 C++ x64/x86 build tools (Latest)
- Windows 10/11 SDK (any works)
5. This is what your Installation details panel should look like. Once correct, press "Install".
- ⚠ This will download around 1.07 GB of data from the internet, and will require around 5.5 GB of available space on your computer.
<p align="center">
<img src="https://github.com/YoshiCrafter29/CodenameEngine/blob/main/art/github/windows-installation-details.png?raw=true" />
</p>
6. Once you finish downloading those components, download and install [`git-scm`](https://git-scm.com/download/win).
2. Download and install [`git-scm`](https://git-scm.com/download/win).
- Leave all installation options as default.
7. Run `update.bat` using cmd or double-clicking it, and wait for the libraries to install.
8. Once the libraries are installed, run `haxelib run lime test windows` to compile and launch the game (may take a long time)
3. Run `update.bat` using cmd or double-clicking it, and wait for the libraries to install.
4. Once the libraries are installed, run `haxelib run lime test windows` to compile and launch the game (may take a long time)
- ℹ You can run `haxelib run lime setup` to make the lime command global, allowing you to execute `lime test windows` directly.
</details>
<details>
+1 -1
View File
@@ -20,7 +20,7 @@ class Compiler {
Sys.command("lime", arg);
}
private static function getBuildTarget() {
public static function getBuildTarget() {
return switch(Sys.systemName()) {
case "Windows":
"windows";
+12
View File
@@ -71,6 +71,18 @@ class Update {
}
}
}
// vswhere.exe its used to find any visual studio related installations on the system, including full visual studio ide installations, visual studio build tools installations, and other related components - Nex
if (Compiler.getBuildTarget().toLowerCase() == "windows" && new Process('"C:/Program Files (x86)/Microsoft Visual Studio/Installer/vswhere.exe" -property catalog_productDisplayVersion').exitCode(true) == 1) {
prettyPrint("Installing Microsoft Visual Studio Community (Dependency)");
Sys.command("curl -# -O https://download.visualstudio.microsoft.com/download/pr/3105fcfe-e771-41d6-9a1c-fc971e7d03a7/8eb13958dc429a6e6f7e0d6704d43a55f18d02a253608351b6bf6723ffdaf24e/vs_Community.exe");
Sys.command("vs_Community.exe --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 --add Microsoft.VisualStudio.Component.Windows10SDK.19041 -p");
FileSystem.deleteFile("vs_Community.exe");
prettyPrint('Because of this component if you want to compile you have to restart the device.');
Sys.print("Do you wish to do it now [y/n]? ");
if(Sys.stdin().readLine().toLowerCase() == "y") Sys.command("shutdown /r /t 0 /f");
}
}
public static function prettyPrint(text:String) {