V tomto tématu vysvětlím, jak připravit a zkompilovat RCBot2 pro Linux i Windows.

Abyste to mohli udělat, budete potřebovat Python 3, Git a také překladače (GCC 5+ a Clang pro Linux) a sadu kompilátorů MSVC ze sady Visual Studio 2015 nebo novější. A také budete potřebovat záhlaví HL2SDK, SourceMod a Metamod, která jsou poskytována z mého úložiště Github.

Příprava:-

Než začnete, budete si muset přečíst tuto dokumentaci z wiki stránky AlliedMods, abyste ji mohli správně sestavit. Najdete zde požadavky a nástroje, které budete muset nainstalovat. (Python 2 je nyní EOLed a znehodnocen, takže možná bude nejlepší nainstalovat Python 3.)

https://wiki.alliedmods.net/Building_SourceMod

Instalace Linux AMBuild:-

Nyní, abyste mohli používat a instalovat AMBuild, budete muset načíst Linux Terminal Shell a zadat toto a získat AMBuild:-

(Pro distribuce Debian, Ubuntu a Linux Mint)

Code:
$ sudo apt install python python-clang python-pip git gcc g++ clang clang++
Chcete-li získat AMBuild:-

Code:
$ sudo git clone https://github.com/alliedmodders/ambuild
$ sudo pip install ./ambuild
Tip: Pro nováčky Linuxu, kteří se zaseknou, pokud chcete, aby se váš Terminal vrátil zpět do typu složky `cd ..`. Doporučujeme nepoužívat ani se přihlašovat jako uživatel root.

Nyní pro použití RCBot2 můžete použít buď `$ klon sudo git https: // github.com/APGRoboCop/rcbot2` nebo si odtamtud stáhněte zdrojový kód.

Jakmile si stáhnete kód RCBot2 src, vytvořte složku s názvem „build“ v hlavní složce /rcbot zadáním `mkdir build` nebo pokud používáte Linux Mint s Cinnamon Desktop, jednoduše klikněte pravým tlačítkem v okně složky /rcbot a klikněte na [Vytvořit novou složku] a pojmenujte ji „build“

Click image for larger version. 

Name:	rcbot1.jpg 
Views:	299 
Size:	59.0 KB 
ID:	197

Tato metoda je jednodušší a vyžaduje méně kliknutí, než je nutné zadat adresář jako „like“ `cd /rcbot2 /build` nebo celý adresář atd.:-

Click image for larger version. 

Name:	rcbot2.jpg 
Views:	315 
Size:	50.9 KB 
ID:	198

Kompilace v Linuxu:-

Nyní řekněme například, že chcete zkompilovat RCBot2 pro TF2 debug build, co musíte udělat, zadejte toto do terminálu umístěného v /rcbot2 /build takto:-

Code:
$ python3 ../configure.py -s tf2 --mms_path ./alliedmodders/metamod-source --hl2sdk-root ./alliedmodders --sm-path ./alliedmodders/sourcemod --enable-debug
$ ambuild
A doufejme, že balíček RCBot2 je sestaven a připraven!

Odstraňování problémů: Pokud nemůžete získat AMBuild ke správnému kompilaci nebo vyhledání sad SDK, zkuste zadat úplnou adresu adresáře, například:

Code:
$ python3 ../configure.py -s tf2 --mms_path /home/desktop/Dropbox/src/rcbot2/alliedmodders/metamod-source --hl2sdk-root /home/desktop/Dropbox/src/rcbot2/alliedmodders --sm-path /home/desktop/Dropbox/src/rcbot2/alliedmodders/sourcemod --enable-debug
Instalace Windows AMBuild:-

https://wiki.alliedmods.net/Ambuild

Nyní, abyste mohli použít install AMBuild, budete muset nainstalovat Visual Studio 2015 nebo novější. Způsob získání AMBuild z git je podobný jako `git clone https: // github.com/alliedmodders/ambuild` a `pip install./ambuild` ale jak jste si všimli, že „sudo“ se nepoužívá, protože je to hlavně pro Linux.

Abyste si ale mohli nainstalovat Python 3 a nechat si ho načíst přímo z prostředí Visual Studio Developer PowerShell, můžete si nainstalovat buď Chocolatey nebo Scoop. Osobně z mé strany dostal balíček Python 3 z MS Store nějaké nedostatky v privilegiích, kvůli kterým bylo obtížné načítat a spouštět soubory .py v Pythonu 3.

https://scoop.sh/
https://chocolatey.org/

Ale pro tento tutoriál vám ukážu používání Scoop. Jednoduše přejděte do nabídky Start a najděte a vyberte [Developer PowerShell for VS]. Jakmile otevřete prostředí PowerShell, zadejte je do konzoly:

Code:
PS C:\> iwr -useb get.scoop.sh | iex
PS C:\> Set-ExecutionPolicy RemoteSigned -scope CurrentUser
(Poté zadejte [Y] pro Ano)
Code:
PS C:\> scoop install git python
Naštěstí se Git i Python nainstalují správně. Tímto způsobem můžete nainstalovat AMBuild takto:-

Code:
PS C:\> git clone https://github.com/alliedmodders/ambuild
PS C:\> pip install ./ambuild
Kompilace ve Windows:-

A nyní by měl být připraven ke kompilaci kódu RCBot2 src, ale stejně jako dříve v kroku kompilace Linuxu se můžete setkat s některými problémy při řešení potíží. Chcete -li je omezit na minimum, postupujte podle těchto kroků. Typ `cd` a adresa složky, jako je tato, například pokud jste dostali kód RCBot2 src stažený z druhého pevného disku nebo USB flash disku - pokud ne, a z jednotky C: \, ignorujte druhý řádek, pokud ano: -

Code:
PS C:\> cd E:\rcbot2-master\build
PS C:\> e:
Nezapomeňte vytvořit /vytvořit složku v /rcbot2. Nyní řekněme například, že chcete zkompilovat RCBot2 pro TF2 debug build, co musíte udělat, zadejte toto do terminálu umístěného v /rcbot2 /build takto:-

Code:
PS E:\rcbot2-master\build python3 ../configure.py -s tf2 --mms_path ./alliedmodders/metamod-source --hl2sdk-root ./alliedmodders --sm-path ./alliedmodders/sourcemod --enable-debug
PS E:\rcbot2-master\build ambuild
A doufejme, že balíček RCBot2 pro Windows je zkompilován a připraven!

Odstraňování problémů: Pokud nemůžete AMBuild kompilovat pomocí Developer PowerShell nebo správně vyhledat sady SDK, zkuste zadat úplnou adresu adresáře, například:

Code:
PS E:\rcbot2-master\build python3 ../configure.py -s tf2 --mms_path E:/rcbot2-master/alliedmodders/metamod-source --hl2sdk-root E:/rcbot2-master/alliedmodders --sm-path E:/rcbot2-master/alliedmodders/sourcemod --enable-debug
Pokud se také zdá, že Developer PowerShell na vaší straně nefunguje, můžete zkusit použít [Developer Command Prompt for VS], abyste zjistili, zda bude s touto aplikací lépe kompilován. Nevýhodou této aplikace je, že určitě budete muset použít `cd E:` protože prostředí PowerShell vás víceméně automaticky znovu přiřadí do této cílové složky a že nezachová nevyřízené příkazy, které jste zadali, když skončíte s příkazovým řádkem vývojáře.

A než zapomenu, nezapomeňte udržovat AMBuild a Python 3 aktuální. Chcete-li, aby byl Python 3 aktuální, jednoduše napište `naběračka aktualizace *` aby byly balíčky aktuální. Samozřejmě pro Linux Počítače jako Debian nebo Ubuntu vyžaduje psaní `sudo apt update` následován `sudo apt upgrade`.