Cheat Engine 7.4 のソースコードからビルドして Cheat Engine exe ファイルを生成する方法
Cheat Engine 7.4 のインストーラーを使わずに ソースコード からビルドして Cheat Engine 7.4 を使えるようにする方法を紹介します。
Cheat Engine 7.4 ソースコードビルド方法
Cheat Engine 公式サイト や GitHub からダウンロードしたインストーラーファイル CheatEngine74.exe を実行してインストールしようとしたところ、Windows セキュリティの Windows Defender ウィルス対策がウィルスと脅威の防止と反応 してインストールできません。
調べてみたところ、一時的にセキュリティ機能をオフにして Cheat Engine をインストールする方法(望ましくない可能性のあるアプリのブロックをオフ、リアルタイム保護をオフ)があるようです。
できればこの方法でのインストールは避けたいとお思いいろいろ調べたところ、ソースコードから開発環境 Lazarus を使ってビルドすることでインストールせずに Cheat Engine を使えるようになる方法 があったのでそのやり方を説明します。
ただし、この方法でビルドした場合 Cheat Engine の Speedhack 機能が使えません。Speedhack を使いたい場合は Visual Studio で Cheat Engine ソースコードに含まれる .sln(Project Solution)ファイルをビルド してから、Lazarus でビルド する必要があります。
開発環境 Lazarus を使って Cheat Engine ソースコードビルド
GitHub の Basic Build Instructions にビルド方法が説明してありますが、私の PC 環境ではこの通りに Cheat Engine 7.4 のソースコードからビルドするとエラーが発生してビルドできません。
YouTube で Installing Cheat Engine 7.3 & 7.4 with Lazarus for Windows をみつけ、この動画で説明している内容で進めることでソースコードをビルドすることができました。
ここでは YouTube 動画 の内容に従って説明していきます。
Cheat Engine をビルドするには Lazarus という開発環境をインストールする必要があります。
Windows 10 64bit OS では SourceForge.net から Lazarus Windows 64 bits - Lazarus 2.0.10(lazarus-2.0.10-fpc-3.2.0-win64.exe) をダウンロードしてインストールします。2022年10月時点では GitHub の Basic Build Instructions には Lazarus 2.2.2 のインストールが案内されていますが、私の環境ではビルド時にエラーが発生してダメでした。
ダウンロードした lazarus-2.0.10-fpc-3.2.0-win64.exe ファイルを起動してインストールを進めます。
Select Destination Location 画面では Lazarus のインストール先フォルダを選択して Next ボタンをクリックします。
任意のドライブとフォルダを指定してインストールします。(上の画像では D ドライブに任意のフォルダを作成)
Select Components 画面で Install CHM help files と Globally Install openssl libraries のチェックマークを外して Next ボタンをクリックします。
Cheat Engine のビルド目的ではこの 2つはインストール不要です。
セットアップ画面に従いインストール後 Lazarus を起動します。
Welcome to Lazarus IDE 2.0.10 画面が表示されたら START IDE ボタンをクリックすると Lazarus が起動します。
GitHub から Cheat Engine 7.4 のソースコード(cheat-engine-7.4.zip) をダウンロードして展開・解凍しておきます。
Lazarus のメニューから Project → Open Project(Ctrl + F11)をクリックします。
GitHub からダウンロードして展開・解凍した Cheat Engine 7.4 のソースコード(cheat-engine-7.4.zip) に含まれる、cheat-engine-7.4\Cheat Engine
フォルダにある cheatengine.lpi ファイルを開きます。
cheatengine.lpi ファイルを開くと上の画像のような Error 画面「Compiler "Lazarus インストール先フォルダ\fpc\3.2.0\bin\x86_64-win64\fpc.exe" does not support target i386-win32」メッセージが必ず表示されるので OK ボタンで閉じます。
続けて Lazarus メニュー下ツールバーにあるギア&レンチアイコン横にある▼をクリックして、Release 32-Bit から Release 64-Bit に変更します。
Lazarus メニューにある Run → Build(Shift + F9)をクリックしてソースコードをビルドします。
処理終了後、Messages 画面でグリーンにハイライトされた Success 文字が表示されればビルドは正常に完了です。
ソースコードのビルド完了後 cheat-engine-7.4\Cheat Engine\bin
フォルダに cheatengine-x86_64.exe ファイルが生成されていることを確認します。
cheat-engine-7.4\Cheat Engine\bin
フォルダに一緒に生成された cheatengine-x86_64.dbg ファイルは不要なため削除します。
Cheat Engine を実行するのに必要なのは bin フォルダ内にあるファイル・フォルダのみです。ビルド後 bin フォルダ以外のソースコードフォルダ・ファイルは不要なため削除して問題ありません。
bin フォルダ内にあるファイル・フォルダがすべて必要かどうかは不明ですが、Cheat Engine インストーラーからインストールした場合は同様なフォルダ・ファイル構成となるようです。
bin フォルダにある cheatengine-x86_64.exe ファイルを管理者権限で実行して Cheat Engine 7.4 が起動できることを確認します。
Lazarus でビルド後、Cheat Engine の Speedhack 機能有効化時に「C Error :Incorrect tcc library」と表示されて使えない場合の対策方法
GitHub にある Cheat Engine 7.4 のソースコードを Lazarus でビルド した場合 Speedhack 機能を有効化すると、Confirmation 画面「C Error :Incorrect tcc library」と表示されて Speedhack が使えません。
Cheat Engine の Speedhack 機能を利用したい場合は、Visual Studio で Cheat Engine ソースコードに含まれる .sln(Project Solution)ファイル をビルドしてから、Lazarus でビルド する 必要があります。
この情報は 5ch でみつけたもので、この記事では GitHub にある情報(参考情報 1、参考情報 2)にしたがって Visual Studio で .sln(Project Solution)ファイル をビルドしていきます。
ただ、完全にビルド内容を理解しているわけではないので、以下のビルド方法について内容が間違っていたり不要な手順が含まれている可能性があります。
この記事では Microsoft Visual Studio Community 2019 を使って Cheat Engine ソースコードに含まれる .sln(Project Solution)ファイル をビルドする方法を説明していきます。
Microsoft Visual Studio Community 2019 起動時に表示される「最近開いた項目、開始する」ウィンドウで「コードなしで続行」をクリックします。
Microsoft Visual Studio Community 2019 のメインウィンドウが表示されたらメニュー ファイル → 開くを選択します。
GitHub からダウンロードした Cheat Engine ソースコード を展開・解凍します。
cheat-engine-7.4\Cheat Engine\tcclib\win32\tcc
フォルダにある tcc.sln ファイルを開きます。
ソシューション操作の再ターゲット画面(プロジェクトの再ターゲット)が表示されるので OK ボタンをクリックして閉じます。
私の環境では Windows SDK バージョン:「10.0(最新のインストールされているバージョン)」、プラットフォーム ツールセット:「v142 へのアップグレード」が選択されていたのでそのまま変更せず進めています。
メニュー ビルド → 構成マネージャーを選択します。
構成マネージャー画面です。この画面で設定を変更→ビルドを繰り返していきます。
アクティブ ソリューション構成を Output to 32(Release)、アクティブ ソリューション プラットフォームを Win32 にします。(このあと構成マネージャー画面を何回か表示して設定を変更しますが、アクティブ ソリューション プラットフォームについては Win32 のまま変更しません)
すぐ下にある「プロジェクトのコンテキスト(ビルドまたは配置するプロジェクト構成をチェック)」で構成「Output to 32(Release)」、プラットフォーム「Win32」になっていることを確認して閉じます。
この時画面下側のプラットフォームが勝手に「Win64」になっている場合がありますが、この後「Win64」にも変更して一通り設定をしてビルドするため、そのままビルドしてもおそらく問題ないと思います。気になる場合はここで説明する内容通り(「Win64」→「Win32」に変更)に進めてください。
構成マネージャー設定後メニュー ビルド → ソリューションのビルドを選択してビルドを開始します。
ビルドが正常終了になっているかどうか確認します。
以下同様の手順で構成マネージャーの設定を変更してビルドを繰り返します。
次に構成マネージャーの構成「Output to 32(Release)」のまま、プラットフォーム「x64」に変更して閉じます。
ソリューションのビルドを開始してビルドが正常終了になっているかを確認します。
構成マネージャーでアクティブ ソリューション構成を Output to 64(Release) に変更します。(アクティブ ソリューション プラットフォームは Win32 のまま)
構成「Output to 64(Release)」、プラットフォーム「Win32」に変更して閉じます。
ソリューションのビルドを開始してビルドが正常終了になっているかを確認します。
最後に構成マネージャーの構成「Output to 64(Release)」のまま、プラットフォーム「x64」に変更して閉じます。
ソリューションのビルドを開始してビルドが正常終了になっているかを確認します。
以上 4パターンの構成マネージャーの設定内容でビルドできれば完了となります。
Visual Studio でビルドした tcc.sln ファイルを含む Cheat Engine 7.4 ソースコードを 開発環境 Lazarus でビルド します。
ビルドした Cheat Engine を起動して Speedhack が有効化できるかどうか確認します。
助かりました。ありがとうございます。