Skip to content

Latest commit

 

History

History
234 lines (166 loc) · 8.12 KB

File metadata and controls

234 lines (166 loc) · 8.12 KB

ビルド方法

必要なツール

サクラエディタ本体のビルド

C++20をサポートするC++コンパイラーが必要です。

補助ツールとして以下が必須です。

ツール名 exe名 説明
HTML Help Workshop hhc.exe Visual Studio同梱のもの
CMake cmake.exe Visual Studio同梱のもので可
PowerShell Core pwsh.exe Microsoft Storeなどからインストール
7-Zip 7z.exe 外部依存ファイルの解凍に使用します。
Locale Emulator LEProc.exe 日本語環境以外でHTMLヘルプをビルドする場合に利用します。
Auto HotKey AutoHotKey.exe 日本語環境以外でHTMLヘルプをビルドする場合にソースに腹持ちしたLocale Emulatorを展開する際に利用します。

インストーラのビルド

インストーラをビルドする場合のみ必要です。

choco install InnoSetup -y

詳細は インストーラビルドの仕組み を参照してください。

ビルド手順

実行ファイルのみ

GUI でビルド

Visual Studio で sakura.sln を開いてビルドします。

コマンドラインでビルド

build-sln.bat <Platform> <Configuration>

例: x64 の Release ビルド

build-sln.bat x64 Release

Visual Studio 2019を指定してビルド

set ARG_VSVERSION=16
build-sln.bat Win32 Release

参考: MSBuildの検索についてARG_VSVERSION の詳細を説明しています。

すべてビルド

実行ファイル、ヘルプファイル、インストーラをすべてビルドします。

build-all.bat <Platform> <Configuration>

例: Win32 の Release ビルド

build-all.bat Win32 Release

開発者向け情報

ビルドで使用する環境変数

ビルドで使用する環境変数 を参照してください。

ビルドに使用されるバッチファイル

ビルドに使用されるバッチファイル を参照してください。

デバッグ方法

githash.h の更新をスキップ

ビルド時に git の commit hash を githash.h に出力します。これによりバイナリが commit hash から特定できますが、バイナリが変化しないリファクタリングでもバイナリが異なってしまいます。

検証を容易にするため、環境変数 SKIP_CREATE_GITHASH1 に設定することで commit hash の更新をスキップできます。

注意: githash.h が存在しない場合は、この環境変数に関係なく生成されます。

実行例:

set SKIP_CREATE_GITHASH=1
build-sln.bat Win32 Release
build-sln.bat Win32 Debug
build-sln.bat x64 Release
build-sln.bat x64 Debug

PowerShellによるZIPファイル処理の強制

通常、7z.exe が利用可能な場合は自動的に使用されます(高速)。デバッグ目的で PowerShellスクリプト を強制的に使用する場合:

set FORCE_POWERSHELL_ZIP=1
build-sln.bat Win32 Release

CIビルドのスキップ

ドキュメント修正など、ビルドが不要な変更の場合、コミットメッセージに [ci skip] または [skip ci] を含めることでCIビルドをスキップできます。

注意: PRマージ時は実行されます。

参考:

MinGWビルド (実験的)

警告: 生成されるバイナリは正しく動作しません。

MinGWでのビルド方法

MinGW w64のインストール を完了後、以下の方法でビルドできます。

MINGW64コンソールで以下を実行。

cmake -S . -B build/MinGW -DCMAKE_BUILD_TYPE=Debug -DBUILD_PLATFORM=MinGW
cmake --build build/MinGW
ctest --test-dir build/MinGW --output-on-failure

または、コマンドプロンプトで以下を実行。

build-gnu.bat MinGW Debug
build-gnu.bat MinGW Release

参考情報

Chocolatey関連

Chocolateyのインストール

  1. PowerShell管理者コンソールを開く:

    • Windowsタスクバーの検索窓に powershell と入力
    • Windows PowerShell を右クリックして「管理者として実行」
  2. 以下のコマンドを実行:

    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
  3. インストール確認:

    choco

詳細: Chocolatey公式サイト

Msys2関連

Msys2のインストール

Chocolatey をインストール後、PowerShell管理者コンソールで実行:

choco install msys2 --params "/InstallDir:C:\msys64"

Msys2コンソールを開く方法

C:\msys64\msys2.exe を実行します。

MinGW w64関連

MinGW w64のインストール

  1. Chocolatey をインストール
  2. Msys2 をインストール
  3. Msys2コンソール を開く
  4. pacmanパッケージを最新化:
    pacman -Syuu
  5. MinGW-w64をインストール:
    pacman -S --noconfirm mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-7zip